Математика кубика Рубика
Матема́тика ку́бика Ру́бика — совокупность математических методов для изучения свойств кубика Рубика с абстрактно-математической точки зрения. Изучает алгоритмы сборки кубика, оценки алгоритмов его сборки и др. Основана на теории графов, теории групп, теории вычислимости, комбинаторике.
Существует множество алгоритмов, предназначенных для перевода кубика Рубика из произвольной конфигурации в конечную конфигурацию (собранную, все грани одноцветны). В 2010 г. строго доказано, что для перевода кубика Рубика из произвольной конфигурации в собранную конфигурацию (часто этот процесс называют «сборкой» или «решением») достаточно не более чем 20 поворотов граней (ходов)[1]. Это число является диаметром графа Кэли группы кубика Рубика[2]. В 2014 г. доказано, что для решения кубика Рубика только с помощью поворотов граней на 90° всегда достаточно не более чем 26 ходов[3].
Алгоритм, который решает головоломку за минимально возможное количество ходов, называют алгоритмом Бога .
Нотация
В этой статье для обозначения последовательности поворотов граней кубика Рубика 3×3×3 используется «нотация Сингмастера»[4][5], разработанная Дэвидом Сингмастером и опубликованная им в 1981 году.
Буквы обозначают поворот на 90° по часовой стрелке левой (left), правой (right), передней (front), задней (back), верхней (up) и нижней (down) граней соответственно. Повороты на 180° обозначаются добавлением справа к букве цифры 2 или добавлением в верхнем индексе цифры 2 справа от буквы. Поворот на 90° против часовой стрелки обозначается добавлением штриха ( ′ ) или добавлением в верхнем индексе -1 справа от буквы. Так, например, записи и эквивалентны, так же как записи и .
Метрики графа конфигураций
Существует два наиболее распространённых способа измерения длины решения (метрики). Первый способ — одним шагом (ходом) решения считается поворот грани на 90° (quarter turn metric, QTM). По второму способу — за 1 ход также считается и полуоборот грани (face turn metric, FTM, иногда это обозначают HTM — half-turn metric). Так, F2 (поворот передней грани на 180°) должен считаться за два хода в метрике QTM или за 1 ход в метрике FTM[6][7].
Для указания в тексте длины последовательности для используемой метрики используется нотация[8][9][10], состоящая из цифр числа ходов и строчной первой буквы обозначения метрики. Так, 14f обозначает «14 ходов в метрике FTM», а 10q — «10 ходов в метрике QTM». Чтобы указать, что количество ходов является минимальным в данной метрике, используется звёздочка: 10f* обозначает оптимальность решения в 10 ходов FTM.
Группа кубика Рубика
Кубик Рубика может рассматриваться как пример математической группы.
Каждый из шести поворотов граней кубика Рубика может рассматриваться как элемент симметрической группы множества 48 этикеток кубика Рубика, не являющихся центрами граней. Более конкретно, можно пометить все 48 этикеток числами от 1 до 48 и сопоставить каждому из ходов элемент симметрической группы .
Тогда группа кубика Рубика определяется как подгруппа , порождаемая шестью поворотами граней:
Порядок группы равен [11][12]:
Каждая из конфигураций может быть решена не более чем за 20 ходов (если считать за ход любой поворот грани)[1].
Наибольший порядок элемента в равен 1260. Например, последовательность ходов необходимо повторить 1260 раз, прежде чем кубик Рубика вернётся в исходное состояние[13].
Алгоритм Бога
История поиска алгоритма Бога кубика Рубика началась не позже 1980 года, когда открылся список рассылки для любителей кубика Рубика[6]. С тех пор математики, программисты и просто любители стремились найти алгоритм Бога — алгоритм, который бы позволил на практике решать кубик Рубика за минимальное число ходов. С этой проблемой была связана проблема определения числа Бога — числа ходов, всегда достаточного для сборки головоломки.
В июле 2010 года программист из Пало-Альто Томас Рокики, учитель математики из Дармштадта Герберт Коцемба, математик из Кентского университета Морли Дэвидсон и инженер компании Google Inc. Джон Детридж доказали, что каждая конфигурация кубика Рубика может быть решена не более чем в 20 ходов. При этом любой поворот грани считался одним ходом. Объём вычислений составил около 35 лет процессорного времени, пожертвованного компанией Google[1][14][15]. Технические данные о производительности и количестве компьютеров не разглашаются; продолжительность вычислений составляла несколько недель[16][17][18].
В августе 2014 года Томас Рокики и Морли Дэвидсон доказали, что каждая конфигурация кубика Рубика может быть решена не более чем в 26 ходов без использования поворотов на 180°. Объём вычислений составил около 29 лет процессорного времени в суперкомпьютерном центре Огайо[3].
Нижние оценки числа Бога
Достаточно легко показать, что существуют разрешимые конфигурации[19], которые не могут быть решены менее чем в 17 ходов в метрике FTM или 19 ходов в метрике QTM.
Первый ход можно сделать способами (любую из шести граней можно повернуть на один из трёх углов — 180°, ±90°), на втором и каждом из следующих ходов число способов равно , так как нет смысла дважды подряд поворачивать одну грань. Количество различных последовательностей из ходов будет равно . Число последовательностей длины, не превосходящей , равно . Минимальное , при котором эта сумма впервые превысит общее число разрешимых конфигураций , равно . Следовательно, существуют конфигурации, которые не могут быть решены менее чем в ходов. |
Эту оценку можно улучшить, принимая во внимание дополнительные тождества, например, коммутативность поворотов двух противоположных граней (L R = R L, L2 R = R L2 и т. д.) Подобный подход позволяет получить нижнюю оценку для числа Бога, равную 18f или 21q[20][21].
Эта оценка в течение многих лет оставалась наилучшей известной. Кроме того, она вытекает из неконструктивного доказательства, так как оно не указывает конкретный пример конфигурации, требующей для сборки 18f или 21q.
Одной из конфигураций, для которой не удавалось найти короткое решение, был так называемый «суперфлип», или «12-флип». «Суперфлип» представляет собой конфигурацию, в которой все угловые и рёберные кубики находятся на своих местах, но каждый рёберный кубик ориентирован противоположно[22].
Вершина, отвечающая суперфлипу в графе кубика Рубика, является локальным максимумом: любой ход из этой конфигурации уменьшает расстояние до начальной конфигурации. Это дало основание предположить, что суперфлип находится на максимальном расстоянии от начальной конфигурации, то есть является глобальным максимумом[23][24][25].
В 1992 году Дик Т. Винтер нашёл решение суперфлипа в 20f[26]. В 1995 году Майкл Рид доказал оптимальность этого решения[27], в результате чего нижняя оценка числа Бога стала равной 20 FTM. В том же году Майкл Рид обнаружил решение «суперфлипа» в 24q[28]. Оптимальность этого решения была доказана Джерри Брайаном[29].
В 1998 году Майкл Рид нашёл конфигурацию, оптимальное решение которой составляло 26q*[30].
Верхние оценки числа Бога
Чтобы получить оценку сверху для числа Бога, достаточно указать любой алгоритм сборки головоломки, состоящий из конечного числа ходов.
Первые оценки сверху для числа Бога были основаны на «человеческих» алгоритмах, состоящих из нескольких этапов. Сложение оценок сверху для каждого из этапов позволяло получить итоговую оценку порядка нескольких десятков или сотен ходов.
Вероятно, впервые конкретная оценка сверху была указана Дэвидом Сингмастером в 1979 году. Его алгоритм сборки позволял решить кубик Рубика не более чем за 277 ходов[16][31]. Позднее Сингмастер сообщил, что Элвин Берлекэмп[англ.]*, Джон Конвей и Ричард Гай разработали алгоритм сборки, требующий не более 160 ходов. Вскоре после этого группа «Conway’s Cambridge Cubists», которая занималась составлением списка комбинаций для одной грани, нашла 94-ходовый алгоритм[16][32].
В 1982 году в журнале «Квант» был опубликован список комбинаций, позволяющих решить кубик Рубика в 79 ходов[33].
Алгоритм Тистлетуэйта
В начале 1980-х английский математик Морвин Тистлетуэйт[англ.]* разработал алгоритм, позволивший значительно улучшить верхнюю оценку. Детали алгоритма были опубликованы Дугласом Хофштадтером в 1981 году в журнале Scientific American. Алгоритм был основан на теории групп и включал в себя четыре этапа.
Описание
Тистлетуэйт использовал ряд подгрупп длины 4
- Эта подгруппа включает в себя все конфигурации, которые могут быть решены без использования поворотов левой или правой граней на ±90°. Её порядок равен
- Эта подгруппа включает в себя все конфигурации, которые могут быть решены при условии, что повороты четырёх вертикальных граней на ±90° запрещены. Её порядок равен
- Эта подгруппа включает в себя все конфигурации, которые могут быть решены с использованием только поворотов на 180° (half-turns). Она получила название «группа квадратов» (squares group). Её порядок равен
- Эта подгруппа включает в себя единственную начальную конфигурацию.
На первом этапе произвольно заданная конфигурация из группы приводится к конфигурации, лежащей в подгруппе . Цель второго этапа состоит в том, чтобы привести кубик к конфигурации, находящейся в подгруппе , не используя поворотов левой и правой граней на ±90°. На третьем этапе кубик Рубика приводится к конфигурации, принадлежащей группе , при этом повороты вертикальных граней на ±90° запрещены. На заключительном, четвёртом этапе, кубик Рубика полностью собирается поворотами граней на 180°.
Индексы подгрупп при равны соответственно 2048, 1082565, 29400 и 663552.
Для каждого из четырёх семейств правых смежных классов строится таблица поиска , размер которой совпадает с индексом подгруппы в группе . Для каждого класса смежности по подгруппе таблица поиска содержит последовательность ходов, переводящую любую конфигурацию из этого класса смежности в конфигурацию, лежащую в самой подгруппе .
Чтобы уменьшить количество записей в таблицах поиска, Тистлетуэйт использовал упрощающие предварительные ходы. Первоначально он получил оценку в 85 ходов. В течение 1980 года эта оценка была снижена до 80 ходов, затем до 63 и 52[16][36]. Студенты Тистлетуэйта провели полный анализ каждого из этапов. Максимальные значения в таблицах равны 7, 10, 13 и 15 ходам FTM соответственно. Так как 7 + 10 + 13 + 15 = 45, кубик Рубика всегда может быть решён в 45 ходов FTM[25][37][38].
Граф Шрайера
Граф Шрайера[англ.] — граф , ассоциированный с группой , порождающим множеством и подгруппой . Каждая вершина графа Шрайера является правым смежным классом для некоторого . Рёбра графа Шрайера представляют собой пары .
Каждый из четырёх этапов алгоритма Тистлетуэйта представляет собой обход в ширину графа Шрайера , где — порождающее множество группы .
Таким образом, верхняя оценка в 45 ходов равна
- ,
где
- — эксцентриситет вершины , соответствующей единичному смежному классу .
Понятие графа Шрайера было использовано в работах Раду[39], Канкла и Купермана[40].
Модификации алгоритма Тистлетуэйта
В декабре 1990 года Ханс Клоостерман использовал модифицированную версию метода Тистлетуэйта для доказательства достаточности 42 ходов[1][20][41].
В мае 1992 года Майкл Рид показал достаточность 39f или 56q[42]. В его модификации использовалась следующая цепочка подгрупп:
Уже через несколько дней Дик Т. Винтер снизил оценку в метрике FTM до 37 ходов[43].
В декабре 2002 года Райан Хайз разработал вариант алгоритма Тистлетуэйта, предназначенный для скоростной сборки кубика Рубика[44].
Двухфазный алгоритм Коцембы
Алгоритм Тистлетуэйта был в 1992 году улучшен учителем математики из Дармштадта Гербертом Коцембой.
Описание
Коцемба сократил количество этапов алгоритма до двух[20][45][46]:
Наглядное описание группы можно получить, если произвести следующую разметку[20][47]:
- Все этикетки U и D пометить знаком «+».
- Этикетки F и B на рёберных элементах FR, FL, BL и BR пометить знаком «—».
- Все остальные этикетки оставить без меток.
Тогда все конфигурации группы будут иметь одну и ту же разметку (совпадающую с разметкой на собранном кубике).
Решение состоит из двух этапов. На первом этапе заданная конфигурация переводится последовательностью ходов в некоторую конфигурацию . Иными словами, задача первого этапа — восстановить разметку, соответствующую начальной конфигурации, игнорируя цвета этикеток.
На втором этапе конфигурация переводится последовательностью ходов в начальную конфигурацию. При этом повороты боковых граней на ±90° не используются, благодаря чему разметка автоматически сохраняется.
Склейка последовательностей ходов и является субоптимальным решением к исходной конфигурации[20][46][48].
Альтернативные субоптимальные решения
Алгоритм Коцембы не останавливается после обнаружения первого решения. Альтернативные оптимальные решения на первом этапе могут привести к более коротким решениям второго этапа, что сократит общую длину решения. Алгоритм продолжает искать также неоптимальные решения на первом этапе в порядке возрастания их длины[20][46][48].
Особенности реализации
Для поиска решений на каждом из двух этапов применяется алгоритм IDA* с эвристическими функциями, основанными на стоимостях решения соответствующих подзадач[48].
Задача первого этапа сводится к поиску пути в пространстве с тремя координатами из разметки с координатами (x1, y1, z1) в разметку (0, 0, 0)[49]:
- Ориентация x1 восьми угловых элементов (2187 значений)
- Ориентация y1 двенадцати рёберных элементов (2048 значений)
- Расстановка z1 четырёх рёберных элементов FR, FL, BL и BR (495 значений)
Рассмотрим три подзадачи поиска пути из разметки (x1, y1, z1) в разметки (x1’, y1’, 0), (x1’, 0, z1’), (0, y1’, z1’). Значение эвристической функции h1, используемой на первом этапе, равно максимальной из стоимостей решения этих подзадач. Стоимости решения подзадач предварительно вычисляются и хранятся в виде баз данных с шаблонами[50][51].
Задача второго этапа сводится к поиску пути в пространстве с тремя координатами из конфигурации (x2, y2, z2) в конфигурацию (0, 0, 0)[52]:
- Перестановка x2 восьми угловых элементов (40320 значений)
- Перестановка y2 восьми рёберных элементов верхней и нижней граней (40320 значений)
- Перестановка z2 четырёх рёберных элементов среднего слоя (24 значения)
Рассмотрим три подзадачи поиска пути из конфигурации (x2, y2, z2) в конфигурации (x2’, y2’, 0), (x2’, 0, z2’), (0, y2’, z2’). Значение эвристической функции h2, используемой на втором этапе, равно максимальной из стоимостей решения этих подзадач.
В алгоритме применяются дополнительные оптимизации, направленные на увеличение быстродействия и уменьшение памяти, занимаемой таблицами[20][45][46][53].
Программные реализации
Cube Explorer — программная реализация алгоритма для ОС Windows. Ссылки для загрузки находятся на сайте Герберта Коцембы[54]. В 1992 году на ПК Atari ST с памятью 1 Мбайт и частотой 8 МГц алгоритм позволял в течение 1-2 минут найти решение не длиннее 22 ходов[20][45]. На современном компьютере Cube Explorer позволяет за несколько секунд найти решение не длиннее 20 ходов для произвольно заданной конфигурации[45].
Существует онлайн-версия алгоритма[55].
Анализ
В 1995 году Майкл Рид показал, что первая и вторая фазы алгоритма Коцембы могут потребовать не более 12 и 18 ходов (FTM) соответственно. Из этого следует, что кубик Рубика всегда может быть решён в 30 ходов. Дополнительный анализ показал, что всегда достаточно 29f или 42q[25][56].
Алгоритм Корфа
Алгоритм Коцембы позволяет быстро находить короткие, субоптимальные решения. Тем не менее, может потребоваться значительное время, чтобы доказать оптимальность найденного решения. Был необходим специализированный алгоритм поиска оптимальных решений.
В 1997 году Ричард Корф опубликовал алгоритм, позволявший оптимально решать произвольные конфигурации кубика Рубика. Десять выбранных случайным образом конфигураций были решены не более чем в 18 ходов FTM[57][58].
Собственно алгоритм Корфа работает следующим образом. В первую очередь определяются подзадачи, достаточно простые для того, чтобы осуществить полный перебор. Были использованы следующие три подзадачи[25]:
- Состояние головоломки определяется только восемью угловыми кубиками, положения и ориентации рёбер игнорируются.
- Состояние головоломки определяется шестью из 12 рёберных кубиков, другие кубики игнорируются.
- Состояние головоломки определяется другими шестью рёберными кубиками.
Количество ходов, необходимое для решения каждой из этих подзадач, является нижней оценкой количества ходов, необходимого для полного решения. Произвольно заданная конфигурация кубика Рубика решается с помощью алгоритма IDA*, использующего эту оценку в качестве эвристики. Стоимости решения подзадач хранятся в виде баз данных с шаблонами[50][57].
Хотя этот алгоритм будет всегда находить оптимальные решения, он не позволяет напрямую определить, как много ходов может потребоваться в худшем случае.
Реализацию алгоритма на языке C можно найти в[59].
Дальнейшие улучшения
В 2005 году результат Майкла Рида в метрике QTM был улучшен Силвиу Раду до 40q[60].
В 2006 году, Силвиу Раду удалось доказать, что кубик Рубика может быть решён в 27f[39] или 35q[61].
В 2007 году Дэниел Канкл и Джин Куперман использовали суперкомпьютер для доказательства того, что все нерешённые конфигурации могут быть решены не более чем в 26 ходов FTM. Идея доказательства состояла в том, чтобы привести кубик Рубика в одну из 15 752 конфигураций подгруппы квадратов, каждая из которых может быть окончательно решена с помощью нескольких дополнительных ходов. Большинство конфигураций удалось решить таким образом не более чем в 26 ходов; оставшиеся конфигурации были подвергнуты дополнительному анализу, который показал, что они также решаются в 26 ходов[40][62].
В 2008 году Томас Рокики опубликовал вычислительное доказательство разрешимости головоломки в 25 ходов FTM[63].
В августе 2008 года Рокики объявил о доказательстве разрешимости в 23f[64]. Позже эта оценка была улучшена до 22f[65]
В 2009 году ему же удалось показать разрешимость в 29 ходов QTM[66].
В 2010 году Томас Рокики, Герберт Коцемба, Морли Дэвидсон и Джон Детридж объявили о доказательстве того, что любая конфигурация кубика Рубика может быть решена не более чем в 20 ходов в метрике FTM[1][14]. Вместе с известной ранее оценкой снизу в 20f* это стало доказательством того, что число Бога кубика Рубика в метрике FTM равно 20.
В августе 2014 года Рокики и Дэвидсон объявили, что число Бога для кубика Рубика в метрике QTM равно 26[3][67].
Поиск антиподов
Конфигурацию кубика Рубика, которая расположена на максимальном расстоянии от начальной конфигурации, называют антиподом. Любой антипод в метрике FTM имеет оптимальное решение в 20f*, а любой антипод в метрике QTM имеет оптимальное решение в 26q*[3][68].
Известно, что в метрике FTM существуют миллионы антиподов[69]. Одна из таких конфигураций — «суперфлип». Напротив, в метрике QTM на данный момент известна лишь одна конфигурация-антипод (не считая конфигураций, полученных из неё поворотами) — т.н. «композиция суперфлипа и четырёх точек» (superflip composed with four spot)[30][67][68][70]. Известны лишь две конфигурации на расстоянии 25q* от начальной конфигурации и около 80 тысяч конфигураций на расстоянии 24q*[3][69].
Асимптотические оценки
В 2011 году было показано, что число Бога кубика n × n × n является Θ(n2 / log(n))[71][72].
Другие головоломки
Void Cube
Void Cube — кубик Рубика без этикеток в центрах граней.
Длина оптимального решения «void-суперфлипа» в метрике FTM равна 20[73][74], что является доказательством необходимости 20 ходов. Так как Void Cube является ослабленной задачей[50] кубика Рубика, существующее доказательство достаточности 20 ходов для кубика Рубика[1] применимо и к Void Cube. Следовательно, число Бога головоломки Void Cube в метрике FTM равно 20.
Кубик 4×4×4
Количество конфигураций головоломки 4×4×4 (англ. Rubik's Revenge) равно[75]
Метрики 4×4×4
Существует несколько способов определения метрики для кубика 4×4×4. В этом разделе используются следующие метрики:
- q-s (quarter slice): одним ходом считается поворот любого из 12 слоёв головоломки на ±90°;
- q-w (quarter twist): одним ходом считается поворот любого внешнего блока (т.е. только грани или грани с несколькими идущими подряд прилегающими к ней слоями) на ±90°;
- q-b (quarter block): одним ходом считается поворот любого внешнего или внутреннего блока (т.е. любой последовательности идущих подряд параллельных слоёв) на ±90° относительно остальной части головоломки;
- h-s, h-w, h-b: аналогичны трём предыдущим метрикам, за исключением того, что разрешены также повороты на 180°.
Длина оптимального решения произвольной конфигурации в метрике q-b не больше, чем в метриках q-w или q-s, так как в метрике q-b разрешены все ходы двух других q-метрик. То же относится к h-метрикам.
Оценки числа Бога кубика 4×4×4
В 2006—2007 гг. Брюс Норског (Bruce Norskog) провёл 5-этапный анализ кубика 4×4×4, аналогичный 4-этапному анализу, проведённому Тистлетуэйтом для кубика Рубика 3×3×3. В результате анализа были получены верхние оценки в 82 хода в метрике h-w[76], 77 ходов в метрике h-s[77][78] и 67 ходов в метрике h-b[76].
В 2013 году Shuang Chen (陈霜) снизил оценку в метрике h-w с 82 до 57 поворотов[79].
В 2015 году Томас Рокики подтвердил верхнюю оценку в 57 поворотов h-w и получил новые верхние оценки в 56 h-s и 53 h-b[80]. Уже спустя несколько дней Shuang Chen (陈霜) удалось получить верхние оценки в 55 h-w и 53 h-s, переопределив этапы доказательства[81][82].
В 2011 году Томас Рокики на основании нескольких существующих идей определил нижние оценки числа Бога в шести метриках для кубических головоломок с размерами от 2×2×2 до 20×20×20[83]. Результаты для кубика 4×4×4 приведены в таблице (вместе с известными верхними оценками).
метрика | h-s | h-w | h-b | q-s | q-w | q-b |
---|---|---|---|---|---|---|
оценка снизу | 32 | 35 | 29 | 37 | 41 | 33 |
оценка сверху | 53 | 55 | 53 | ? | ? | ? |
Мегаминкс
Мегаминкс — простейший аналог кубика Рубика в форме додекаэдра. Количество конфигураций 12-цветного Мегаминкса равно 1.01·1068.
В 2012 году Герберт Коцемба определил нижнюю оценку числа Бога для Мегаминкса, равную 45 поворотам граней на любой угол или 55 поворотам на угол ±72°[84][85].
В 2016 году Герберт Коцемба уточнил нижнюю оценку числа Бога для Мегаминкса, повысив ее до 48 поворотов граней на любой угол[86].
См. также
Примечания
- ↑ 1 2 3 4 5 6 Rokicki, T.; Kociemba, H.; Davidson, M.; and Dethridge, J. God's Number is 20 (англ.). Дата обращения: 19 июля 2013.
- ↑ По системе образующих, состоящей из поворотов граней на ±90° и на 180°.
- ↑ 1 2 3 4 5 Rokicki, T. and Davidson, M. God's Number is 26 in the Quarter-Turn Metric (англ.). Дата обращения: 4 июля 2015.
- ↑ Joyner, 2002, p. 7.
- ↑ Moral and Mathematical Lessons from a Rubik Cube // New Scientist. — 1982.
- ↑ 1 2 Jerry Slocum, David Singmaster, Wei-Hwa Huang, Dieter Gebhardt, Geert Hellings. The Cube: The Ultimate Guide to the World's Bestselling Puzzle — Secrets, Stories, Solutions. — 2009. — С. 26. — 142 с.
- ↑ Jaap Scherphuis. Useful Mathematics. Metrics (англ.). Дата обращения: 17 июля 2013.
- ↑ Jerry Bryan. Notational convention (05/27/2006). Дата обращения: 28 июля 2013.
- ↑ David Singmaster. Cubic Circular (англ.). — 1982. — Iss. 5 & 6. — P. 26.
- ↑ Jaap Scherphuis. Puzzle Statistics (англ.). Дата обращения: 17 июля 2013.
- ↑ Schönert, Martin Analyzing Rubik's Cube with GAP (англ.). Дата обращения: 19 июля 2013.
- ↑ Jaap Scherphuis. Rubik's Cube 3x3x3 (англ.). Дата обращения: 19 июля 2013.
- ↑ Joyner, 2008, pp. 93, 108.
- ↑ 1 2 Herbert Kociemba. Two-Phase-Algorithm and God's Algorithm: God's number is 20 (англ.). Дата обращения: 23 июля 2013.
- ↑ Tomas Rokicki, Herbert Kociemba, Morley Davidson, and John Dethridge. The Diameter of the Rubik's Cube Group Is Twenty // SIAM J. Discrete Math.. — 2013. — Vol. 27, no. 2. — P. 1082–1105. — doi:10.1137/120867366.
- ↑ 1 2 3 4 Rik van Grol. The Quest For God’s Number (англ.). Math Horizons (ноябрь 2010). Дата обращения: 26 июля 2013.
- ↑ Stefan Edelkamp, Stefan Schrōdl. Heuristic search: theory and applications. — Morgan Kaufmann Publishers, 2012. — 712 с. — ISBN 978-0-12-372512-7.
- ↑ SIAM J. Discrete Math., 27(2), 1082–1105
- ↑ «Разрешимой» конфигурацией называется конфигурация, которая может быть переведена в собранную. Так как граф кубика Рубика ненаправленный, из этого следует, что любая конфигурация, полученная из исходной произвольной последовательностью ходов разрешима. Но существуют неразрешимые конфигурации. Например, если в собранном состоянии повернуть одну из вершин кубика на 120°, то получится неразрешимая конфигурация.
- ↑ 1 2 3 4 5 6 7 8 В. Дубровский, А. Калинин. Новости кубологии // Квант. — 1992. — № 11. — С. 52-56.
- ↑ Jaap Scherphuis. Useful Mathematics. God's Algorithm (англ.). Дата обращения: 17 июля 2013.
- ↑ Michael Reid. Michael Reid's Rubik's cube page. M-symmetric positions (англ.) (24 мая 2005). Дата обращения: 17 июля 2013.
- ↑ David Singmaster. Cubic Circular (англ.). — 1982. — Iss. 5 & 6. — P. 24.
- ↑ Joyner, 2002, p. 149.
- ↑ 1 2 3 4 Stefan Pochmann. Analyzing Human Solving Methods for Rubik’s Cube and similar Puzzles (Diploma Thesis) (англ.).
- ↑ Dik T. Winter. Kociemba's algorithm (англ.) (Mon, 18 May 92 00:49:48 +0200). Дата обращения: 17 июля 2013.
- ↑ Michael Reid. superflip requires 20 face turns (англ.) (Wed, 18 Jan 95 10:13:45 -0500). Дата обращения: 17 июля 2013.
- ↑ Michael Reid. superflip (англ.) (Tue, 10 Jan 95 18:57:20 -0500). Дата обращения: 17 июля 2013.
- ↑ Jerry Bryan. Qturn Lengths of M-Symmetric Positions (англ.) (Sun, 19 Feb 95 23:20:22 -0500 (EST)). Дата обращения: 17 июля 2013.
- ↑ 1 2 Michael Reid. superflip composed with four spot (англ.) (август 1998). Дата обращения: 4 июля 2015.
- ↑ Л. А. Калужнин, В. И. Сущанский. Преобразования и перестановки. — М., 1985. — С. 143. — 160 с.
- ↑ David Singmaster. Notes on Rubik's Magic Cube. — Enslow Publishers, 1981. — P. 30.
- ↑ В. Дубровский. Алгоритм волшебного кубика // Квант. — 1982. — № 7. — С. 22-25.
- ↑ Порядок этой и следующих трёх групп вычисляется как произведение трёх множителей, указывающих соответственно количество разрешимых конфигураций углов, количество разрешимых конфигураций рёбер и общее ограничение «чётности» разрешимой конфигурации.
- ↑ Jaap Scherphuis. Cube subgroups. Subgroups generated by face moves (англ.). Дата обращения: 19 июля 2013.
- ↑ Mark Longridge. Progressive Improvements in Solving Algorithms (англ.). Дата обращения: 28 июля 2013.
- ↑ В. Дубровский. Математика волшебного кубика // Квант. — 1982. — № 8. — С. 22-27, 48.
- ↑ Jaap Scherphuis. Thistlethwaite's 52-move algorithm (англ.). Дата обращения: 17 июля 2013.
- ↑ 1 2 silviu. Rubik can be solved in 27f . Domain of the Cube Forum (4 января 2006). Дата обращения: 20 июля 2013.
- ↑ 1 2
Kunkle, D. (2007). "Twenty-Six Moves Suffice for Rubik's Cube" (PDF). Proceedings of the International Symposium on Symbolic and Algebraic Computation (ISSAC '07). ACM Press.
{{cite conference}}
: Неизвестный параметр|booktitle=
игнорируется (|book-title=
предлагается) (справка); Неизвестный параметр|coauthors=
игнорируется (|author=
предлагается) (справка) - ↑ Michael Reid. an upper bound on god's number (англ.) (Wed, 29 Apr 92 01:37:26 -0700 (PDT)). Дата обращения: 17 июля 2013.
- ↑ Michael Reid. new upper bound (англ.) (Fri, 22 May 92 22:56:34 -0700 (PDT)). Дата обращения: 19 июля 2013.
- ↑ Dik T. Winter. Corrected calculations are now done. (англ.) (Thu, 28 May 92 15:00:49 +0200). Дата обращения: 19 июля 2013.
- ↑ Ryan Heise. The Human Thistlethwaite Algorithm (англ.). Дата обращения: 19 июля 2013.
- ↑ 1 2 3 4 Herbert Kociemba. Two-Phase Algorithm Details (англ.). Дата обращения: 20 июля 2013.
- ↑ 1 2 3 4 Jaap Scherphuis. Computer Puzzling. Kociemba's Algorithm (англ.). Дата обращения: 23 июля 2013.
- ↑ Herbert Kociemba. The Subgroup H and its cosets (англ.). Дата обращения: 23 июля 2013.
- ↑ 1 2 3 Herbert Kociemba. The Two-Phase-Algorithm (англ.). Дата обращения: 23 июля 2013.
- ↑ Биекция между конфигурациями и тройками координат установлена таким образом, что целевой разметке первого этапа (т.е. любой конфигурации из группы G1) соответствует тройка (0, 0, 0).
- ↑ 1 2 3 Стюарт Рассел, Питер Норвиг. Составление допустимых эвристических функций // Искусственный интеллект: современный подход = Artificial Intelligence: A Modern Approach. — 2-е изд.. — М.: Вильямс, 2006. — С. 170 — 173. — 1408 с. — ISBN 5-8459-0887-6.
- ↑ Англ. pattern databases. В изложении автора алгоритма — «pruning tables».
- ↑ Из-за ограничения, связанного с чётностью перестановки элементов, встречается только половина всех троек координат.
- ↑ Herbert Kociemba. Pruning Tables (англ.). Дата обращения: 23 июля 2013.
- ↑ Herbert Kociemba. Download (англ.). Дата обращения: 20 июля 2013.
- ↑ Eric Dietz. Solve Your Cube In Less Than 25 Moves (англ.). Дата обращения: 20 июля 2013.
- ↑ Michael Reid. new upper bounds (англ.) (Sat, 07 Jan 95 20:24:35 -0500). Дата обращения: 19 июля 2013.
- ↑ 1 2 Richard E. Korf. Finding Optimal Solutions to Rubik's Cube Using Pattern Databases. — 1997.
- ↑ Шаблон:Cite article
- ↑ Michael Reid. Rubik's cube page. Optimal Rubik's cube solver (28 октября 2006). Дата обращения: 20 июля 2013.
- ↑ Silviu Radu. "A New Upper Bound on Rubik's Cube Group". arXiv:math/0512485.
- ↑ silviu. Rubik can be solved in 35q . Domain of the Cube Forum (03/22/2006). Дата обращения: 20 июля 2013.
- ↑ Northeastern University Researchers Solve Rubik’s Cube in 26 Moves . Дата обращения: 20 июля 2013.
- ↑ Tom Rokicki. "Twenty-Five Moves Suffice for Rubik's Cube". arXiv:0803.3435.
- ↑ rokicki. Twenty-Three Moves Suffice . Domain of the Cube Forum (04/29/2008). Дата обращения: 20 июля 2013.
- ↑ rokicki. Twenty-Two Moves Suffice . Domain of the Cube Forum (8 декабря 2008). Дата обращения: 20 июля 2013.
- ↑ rokicki. Twenty-Nine QTM Moves Suffice . Domain of the Cube Forum (06/15/2009). Дата обращения: 20 июля 2013.
- ↑ 1 2 Adam P. Goucher. Superflip composed with fourspot . Complex Projective 4-Space (25 сентября 2015).
- ↑ 1 2 Jaap Scherphuis. Cayley Graphs. Distances (англ.). Дата обращения: 4 июля 2015.
- ↑ 1 2 Known Distance-20 Positions in the Half-Turn Metric. Known Distance-24 or Greater Positions in the Quarter-Turn Metric
- ↑ Pretty Patterns Rubik's Cube | Edge Flip, Dot | Superflip, With 4 Dots .
- ↑ Demaine, Erik D.; Demaine, Martin L.; Eisenstat, Sarah; Lubiw, Anna; Winslow, Andrew (2011). "Algorithms for Solving Rubik's Cubes". arXiv:1106.5736 [cs.DS].
{{cite arXiv}}
: Неизвестный параметр|version=
игнорируется (справка) - ↑ Larry Hardesty. The math of the Rubik’s cube. New research establishes the relationship between the number of squares in a Rubik’s-cube-type puzzle and the maximum number of moves required to solve it (англ.). MIT News Office (29 июня 2011). Дата обращения: 23 июля 2013.
- ↑ rokicki. Void cube diameter at least 20 (face turn metric) . Domain of the Cube Forum (01/19/2010). Дата обращения: 28 июля 2013.
- ↑ rokicki. Void cube diameter at least 20 (probably 20) . Speedsolving.com (01/19/2010). Дата обращения: 28 июля 2013.
- ↑ Jaap Scherphuis. Rubik's Revenge (англ.). Дата обращения: 28 июля 2013.
- ↑ 1 2 Bruce Norskog. New upper bounds: 82 twist turns, 67 block turns . Domain of the Cube Forum (08/13/2007). Дата обращения: 28 июля 2013.
- ↑ Bruce Norskog. The 4x4x4 can be solved in 77 single-slice turns . Domain of the Cube Forum (07/26/2007).
- ↑ Bigger rubik cube bound . Project Euler. Дата обращения: 28 июля 2013.
- ↑ CS. Solving the 4x4x4 in 57 moves(OBTM) . Domain of the Cube Forum (09/30/2013). Дата обращения: 19 ноября 2013.
- ↑ rokicki. 4x4x4 upper bounds: 57 OBTM confirmed; 56 SST and 53 BT calculated. Domain of the Cube Forum (3 марта 2015). Дата обращения: 1 июля 2015.
- ↑ CS. 4x4x4 new upper bound: 55 OBTM . Domain of the Cube Forum (3 июля 2015). Дата обращения: 1 июля 2015.
- ↑ CS. 4x4x4 new upper bound: 53 SSTM . Domain of the Cube Forum (3 сентября 2015). Дата обращения: 1 июля 2015.
- ↑ rokicki. Lower Bounds for n x n x n Rubik's Cubes (through n=20) in Six Metrics . Domain of the Cube Forum (07/18/2011). Дата обращения: 28 июля 2013.
- ↑ Herbert Kociemba. Megaminx needs at least 45 moves . Domain of the Cube Forum (02/28/2012). Дата обращения: 28 июля 2013.
- ↑ Herbert Kociemba. Lower bound for Megaminx in htm and qtm . Speedsolving.com (3 января 2012). Дата обращения: 28 июля 2013.
- ↑ Lower bound for Megaminx in htm and qtm
Рекомендуемая литература
- В. Залгаллер, С. Залгаллер. Венгерский шарнирный кубик // Квант. — 1980. — № 12. — С. 17 — 21.
- В. Дубровский. Алгоритм волшебного кубика // Квант. — 1982. — № 7. — С. 22-25.
- В. Дубровский. Математика волшебного кубика // Квант. — 1982. — № 8. — С. 22 — 27, 48.
- В. Дубровский, А. Калинин. Новости кубологии // Квант. — 1992. — № 11. — С. 52 — 56.
- Л. А. Калужнин, В. И. Сущанский. Преобразования и перестановки. — М., 1985. — С. 143. — 160 с.
- David Singmaster. Cubic Circular. — 1981 — 1985.
- David Singmaster, Alexander Frey. Handbook of Cubik Math. — 1987.
- David Joyner. Adventures in group theory: Rubik's Cube, Merlin's machine, and Other Mathematical Toys. — Baltimore: Johns Hopkins University Press, 2002. — ISBN 0-8018-6947-1.
- David Joyner. Adventures in Group Theory: Rubik's Cube, Merlin's Machine, and Other Mathematical Toys. — Second edition. — JHU Press, 2008. — 328 p. — ISBN 0-801-89726-2, 978-0-801-89726-9.
- E. D. Demaine, M. L. Demaine, S. Eisenstat, A. Lubiw, A. Winslow. Algorithms for Solving Rubik's Cubes // Lecture Notes in Computer Science. — 2011. — Т. 6942. — С. 689-700. — doi:10.1007/978-3-642-23719-5_58.
Ссылки
- Константин Кноп. Кубик Рубика: штурм твердыни . Дата обращения: 20 июля 2013. Архивировано 20 октября 2009 года.
- Rik van Grol. The Quest For God’s Number (англ.). Math Horizons (ноябрь 2010). Дата обращения: 26 июля 2013.
- Reprinted in: Rik van Grol. The Quest for God's Number // The Best Writing on Mathematics 2011 / Mircea Pitici, Freeman Dyson. — Princeton University Press, 2011. — P. 27-34. — 416 p. — ISBN 1-400-83954-8, 978-1-400-83954-4.
- Jaap Scherphuis. Jaap's Puzzle Page (англ.). — Подборка информации по множеству головоломок и методов их решения. Дата обращения: 20 июля 2013.
- Herbert Kociemba. Cube Explorer 5.01 (англ.). — Домашняя страница Герберта Коцембы. Подробное описание алгоритмов, используемых в программе Cube Explorer. Дата обращения: 20 июля 2013.
- Tomas Rokicki, Herbert Kociemba, Morley Davidson, John Dethridge. God's Number is 20 (англ.). Дата обращения: 20 июля 2013.
- Martin Schönert. Cube Lovers archives converted to HTML (англ.). — 1947 articles between July 1980 and June 1996. Дата обращения: 20 июля 2013.
- Mark Longridge. Domain of the Cube Forum (англ.). — Discussions on the mathematics of the cube. Дата обращения: 20 июля 2013.
- W. D. Joyner. Lecture notes on the mathematics of the Rubik's cube (англ.). Дата обращения: 22 июля 2013.
- Tomas Rokicki. Computers and the Cube (slides) (англ.) (3 ноября 2009). — MATH 78SI: Speedcubing: History, Theory, and Practice. Student-initiated course at Stanford (Autumn 2009). Дата обращения: 30 июля 2013.