Найдено число Бога (для Кубика)
Я ни разу не собирал Кубик Рубика. Даже в детстве у меня всегда было много более интересных дел. Но если честно — у меня просто не получалось.
Я ни разу не собирал Кубик Рубика. Даже в детстве у меня всегда было много более интересных дел. Но если честно — у меня просто не получалось.
— Эрно Рубик, архитектор, создатель Кубика Рубика
На прошлой неделе произошло событие, которое заставило меня узнать, что такое Алгоритм Бога, Число Бога, и как это связано с кубиками.
Три на три на три — не так уж и сложно
Комбинаторика — это такой раздел математики, в котором все можно по-разному перемешать. Этот беспорядок всем нравится, но любишь кататься, люби и саночки возить. В комбинаторике все эти перемешивания принято подсчитывать. Это не так уж и просто, почти как собирать Кубик Рубика.
Допустим, вы нашли три разноцветных кубика Лего в кафе, где вы ждете кого-то, но этот кто-то опаздывает. Вы начинаете по-разному соединять эти три кубика, создавая всяческие комбинации из них. Вам конечно все равно, вы думаете только о времени. Но комбинаторика знает — вы можете собрать 3! уникальных конфигураций. 3! это не тройка, которая должна вас удивить, это факториал тройки. 3! = 1 × 2 × 3 = 6. «Больше шести конфигураций собрать не получится», — говорит комбинаторика, но нам все равно, время поджимает.

— 3! вариантов перестановок трех кубиков и человечек А. Но разве Лего может ассоциироваться с кафе?
Так вот, если бы вы крутили в кафе Кубик Рубика, дело было бы немного более безнадежным. Когда мы крутим Кубик Рубика, комбинаторика говорит нам следующее:

Я хотел придумать, как бы наглядно объяснить, насколько это много. Как вам такое — если бы все жители Земли смотрели на каждое состояние по 1 секунде, то им понадобилось бы 211 лет, чтобы все пересмотреть*. То есть, чтобы досмотреть до 2010, надо было начинать с 1799 года (представляете, родился Пушкин**, и давай на Кубик глядеть). Но тогда население Земли было меньше, поэтому все равно не успели бы.

— То, что может занять 211 человечеств на целый год, можно купить за 30 рублей. Меня это никогда не перестанет поражать.
Причем тут Бог
Алгоритм Бога — это такой алгоритм, который решает Кубик Рубика за минимальное число ходов. Самое интересное, что никто даже не знает, существует ли этот алгоритм или нет. Это, видимо, единственное, что у них общего с Богом.
Число Бога для Кубика Рубика — минимальное число ходов за которое Алгоритм Бога гарантированно решит любую конфигурацию Кубика. То есть существуют конфигурации, которые Алгоритм Бога решает за 1 ход. Но не сущетсвует таких, на которые он тратит больше ходов, чем Число Бога.
— Версия кубика на неодимовых магнитах, которую могут использовать слепые, больные дальтонизмом и очень нетерпеливые (ее легко разобрать). Возможно, никто кроме Бога так и не узнает алгоритм Бога для Кубика Рубика, но играть в него могут почти все. Автор идеи и фотографии — Эндрю Кертис.
На прошлой неделе несколько исследователей заявили, что они вычислили число Бога.
Число Бога для алгоритма Кубика Рубика — 20. Да, жаль, что не 42.
20 — это довольно обычное число, но в контексте Кубика Рубика нет числа более саркастичного и издевательского. Дело в том, что в Кубике Рубика 20 подвижных деталей. Признайтесь, отчаившись вы хоть раз хотели разобрать Кубик, чтобы потом правильно его собрать и успокоиться? В это время число Бога смеялось над вами!

Ведь деталей-то тоже 20.
Слишком много цифр для одной статьи
Существуют такие конфигурации Кубика Рубика, которые требуют 20 ходов для решения — это стало известно еще в 1995 году. Все, что оставалось доказать исследователям — отсутствие конфигураций, требующих 21 или более ходов для решения.
Что может быть проще, осталось только поперебирать комбинации. Вот как они решили это сделать***:
- Разбить исходные 43 252 003 274 489 856 000 состояний на 2 217 093 120 подмножеств
- Сократить число подмножеств до 55 882 296, потому что одни получаются из других поворотами или зеркальными отражениями Кубика
- Не искать оптимальное решение для каждого состояния, довольствоваться любым не длиннее 20 ходов
- Написать программу, которая решает одно подмножество за примерно 20 секунд
Пункт 1) очень важен для того, чтобы выполнить пункт 2). Надо быть хитрым лисом, чтобы составить подмножества именно так, чтобы их потом сократить.
Нежелание искать оптимальные пути в пункте 3) тоже не каприз. Они конечно могли бы делать это, но им незачем — они просто хотели проверить, что Число Бога это 20, а не найти все оптимальные пути для всех конфигураций.
Обработав все подмножества, они не нашли ни одного состояния, которое требует 21 или более ходов для решения. А значит доказали — Число Бога для Кубика Рубика равно 20.
Как проверить, что вы все поняли?
Найти Число Бога не значит найти Алгоритм Бога. Если вы понимаете это и согласны, то вы все поняли. Иначе, можете попробовать перечитать определение Алгоритма Бога и Числа Бога.
Как утереть парням нос?
Вы можете обставить их, я не шучу. Для это вам надо придумать алгоритм, который в пункте 3) будет искать только оптимальные ходы. Это и будет Алгоритмом Бога, а вам, вероятно, будут целовать ноги.
Интересные факты по теме
- Конфигурации Кубика, которые требуют 20 ходов для решения, не так уж часто встречаются (примерно 0,0000000007% от общего числа конфигураций). Первая была обнаружена только через 15 лет после появления Кубика на свет.
- Компьютеры решают Кубик Рубика быстрее, чем люди на них смотрят. Для перебора всех вариантов понадобилось 35 ядро-лет. Это значит, что одно ядро одного компьютера, на котором производились вычисления, справилось бы с ними за 35 лет. Сколько ядер было у них в распоряжении, исследователи не сообщают.
- Компьютерные мощности для решения задачи предоставила компания Google, в которой работает один из исследователей.
Зачем?
Иногда в конце статей я задаю вопрос — почему? Но сегодня другая история, ведь не совсем понятно, зачем знать число Бога для Кубика Рубика. Если вы думаете, что я сейчас скажу: «Попались!», — пошучу шутку и невзначай расскажу, какую великую пользу принесет это открытие, то вы ошибаетесь. Я не знаю зачем. Но я знаю, что мы можем вынести для себя из всего этого.
На самом деле, мы давно уже это вынесли это для себя — если разбить задачу на подзадачи, то ее решение заметно упрощается. Вся проблема в том, чтобы правильно разбить.
А еще наступают новые времена для науки, когда некоторые вещи становится быстрее проверить, чем доказать. Но об этом я однажды уже писал мельком.
Разделяйте и властвуйте!
* — в большом числе одинаковые конфигурации Кубика, повернутые и отраженные, учитываются как разные; а под населением Земли понимается 6,5 миллиардов человек, которые не спят, не едят, а только пялятся на кубики 24 часа в сутки
** — в 1799 году родился самый неоцененный мною писатель Александр Сергеевич Пушкин
*** — пункты «???» и «PROFIT» опущены из-за уважения к читателю
See you!




Комментарии к посту «Найдено число Бога (для Кубика)» 103
эээ
о господи!
а у меня в детстве на кубике рубика цвета были наклеены(цветная клейкая бумага) и я собирал его переклеивая цветную бумажку с одного квадратика на другой)
Гораздо круче переклеивать цвета так, чтобы никто не мог собрать кубик ;)
так в итоге это и получается
Bilo o4en interesno po4itat'!
Spasibo ogromnoe za statju.
интересно но летом трудно усвоить эту пищу для ума))
чем только себя не занять - лишь бы не работать?
я ничего не понял, но это наверное круто.
А я понял.
Круто.
Ох уж этот кубик- рубик...всегда казадось, что математика- это очередная игра разума, попытка обвести вокруг пальца самого Создателя нашей планеты.. все упорядочить, все посчитать и зафиксировать...
понял что никогда не соберу его. тем более не понял половины того что написано но жутко интересно
Кубик - Рубик - потрясающая штука! Недавно чисто случайно увидел как знакомый за 1мин разбирает его полностью, я в шоке перекручиваю сколько могу и что могу, и он опять назад возвращает.
Это поражает :)
Одно дело на Ютубе посмотреть, а другое от того кто по идее вообще не мог его собрать :D
Очень здорово! Теперь надо идти и практиковаться в сборе кубика.
в ресторанном дворике торгового центра щука зимой были сходки(!!) кубикорубистов!а мы с друзьями пили вино за соседним столиком и мельком на них посматривали...так сказать,дезинфецировали душевные раны,вызванные их превосходством!)
любимый автор на лукэтмишечке.
Ты достучался до моего сердца чувак...
Просто посмотрите фильм "ПИ"!)
как на лекцию сходила
а меня папа в детстве научил собирать кубик по его алгоритму. но я его быстро усовершенствовал :)
Jesus, is it you?
Браво! Ваши статьи становятся все лучше. Кажется, это первая которую можно с удовольствием и без проблем прочитать полностью.
P.S. Ну и здорово вы Пушкина писателем назвали. Это меня спровоцировала на поиск его прозы.
а чего там искать то? вот так срау капитанская дочка на ум приходит. и пиковая дама
Вот ей богу, сразу бы не вспомнил. Позор и розги мне.
Уважаемый автор! Кажется, я хочу за вас замуж :)
Можно попросить вас о статье про деление на ноль?
Уж исписано все, да переписано! http://lurkmore.ru/%D0%94%D0%B5%D0%BB%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BD%D0%B0_%D0%BD%D0%BE%D0%BB%D1%8C
Важно не сколько написано, а что и кем. Мне не дает покоя вот что: если вы в своем обычном калькуляторе Windows разднлите любое число на ноль и попросите результат, то калькулятор выдаст "Деление на нуль запрещено". Вот тут вопрос: КЕМ? ПОЧЕМУ? КАК ТАКОЕ ПОЛУЧИЛОСЬ?
В школе же учили. Все очень просто.
Допустим, что 10 / 0 = х. Тогда 10 = 0 * х. Но если взять х ноль раз (х*0), то получится 0, а никак не 10, как мы допустили. Следовательно, каким бы х ни был, мы не получим верного результата при делении на 0. Такто!
Ну и простите за занудность.
Дайте угадаю, вы представили, как я рассказываю нашим с вами потенциальным детям про Кубик Рубика, звезды и планеты? :-)
кстати довольно милая сцена)
обожаю обожаю обожаю комбинаторику. Спасибо за статью, очень интересно.
крутое оформление
Хм...интересно. Помню мой дальний родственник работал в НИИ по изучению трещин. Обычных таких трещин, под разными углами и размерами. Работало там несколько тысяч ученых мужей, кандидатов и профессоров. Вроде бы тоже непонятно зачем, как и в истории с Алгоритмом Бога, но видимо надо. За такую "чудаковатость" мне и нравится математика)
Мой мозг
только сегодня племяннице купила кубик-рубик...она уже просила меня его собрать...думаю, времени у меня не хватит..))
я собираю в среднем за 4 минуты :) из любой комбинации
интересно было бы узнать алгоритм вашего сбора)
я нефига не понял
причем здесь пушкин? причем здесь население земли? лучше обьясните как крутить кубик, чтоб собрать!
http://bit.ly/9ndDE5
ведь гораздо увлекательнее читать посты с неожиданными приемами и интересной подачей, нежели какой-нибудь унылый копипаст или сухой текст. автор молодец, неплохо бы брать с него пример
i_eat_phones
За такую "чудаковатость" мне и не нравится математика)
мне математика перестала нравится с пределов. когда мне сказали: а теперь один это не один а ноль это не ноль.
В моём кубике была вложена инструкция как его собрать
спасибо, интересно))
Замечательая статья. Точь-в-точь как и все предыдущие. У Вас очень светлые мысли, и излагаете Вы их превосходно. С нетерпением жду следующей лекции, профессор Longman.
с ума сойти
зачиталась))
Шикарно, но я так и не могу собрать кубик =)))
как раз купила себе
пойду "утирать нос"(с)
Брррррррр, я 4 часа летел из парижа до москвы, ждал самолета 2,5 часа в шереметьево и потом летел 5 часов из Москвы в Барнаул умудрившись собрать всего 2 стороны. На обратном пути уже читал Бегбедера... А в математике силен... Не помогает!
Оххх, я туп. Я повёлся на 3!
я боюсь читать пост!
я читаю пост и по почерку понимаю, что очередная интересность - от вас. спасибо, правда)
Необычное решение головоломки продемонстрировал Ансси Ванхала из Финляндии: он собрал кубик ногами за 36.72 секунды.(с) )))))) мой друг собирает за 47 секунд,руками правда) мировой рекорд-чуть больше 7! с ума сойти...
О,Кубик Рубика! Как же он меня всегда занимал,я собирала по 3 стороны как многие и никогда все 4 как гении,перед которыми я преклоняюсь. Для меня это как волшебство запредельное. Мой Кубик сломали,но я не могу выбросить его,он украшает холодильник как вечное напоминание о непостижимости жизни)
у куба 4 стороны?? рубик слоями собирается, а не сторонами - это так, о птичках)))
Без алгоритма поиска оптимального решения достаточно бесполезная вещь как мне кажется. Ну и названия все-таки популистские, алгоритм бога, число бога... практической пользы, причем на сайте не увидел выкладок, как они пришли к этому числу 20. Гораздо интереснее на мой взгляд недавно доказанное(но пока не проверенное) равенство классов P и NP, что есть одна из проблем тысячелетия(да-да, из той-же серии, что и гипотеза Пуанкаре, которую доказал Перельман), если доказательство будет принято, то будет переворот во многих областях, скажем в криптографии.
Извиняюсь за критику, просто проблема описанная показалась немного надуманной) А статья интересная, спасибо:)
Равенство классов P и NP — совсем другой уровень сложности. Понимаете, это достаточно абстрактная вещь для обычных людей — классы задач теории алгоритмов.
К тому же, доказательство равенства классов в процессе проверки. Кроме того, в нем раз в неделю находят ошибку.
А еще я не вижу ничего плохого в популяризации науки. Если Бог существует (и он соответствует слухам), я думаю он не против, если вместо крестовых походов его именем делают научные открытия.
В комбинаторике тоже не всегда все очевидно(хотя конечно проще чем вычмат конечно-же:)) Но вот практической пользы как раз больше может быть от доказательства именно этой абстрактной вещи, да и даже если доказательство окажется неверным, оно даст новые пути для решения этой проблемы. А эта задача, это всего-лишь пример, этюд некий для развития мозгов, в институте любил решать задачи из книги Уэзерела "Этюды для программистов" там было много не менее интересных задач. Вот поиск оптимального алгоритма, это уже да, это много серьезнее задача. Но опять-же повторюсь, в этом всем ничего плохого нет, я об этом например незнал, можно будет когда подосвобожусь попробовать повторить исследования этих людей:)
я научилась собирать одну сторону около месяца назад )
собираю за 1:49 ) мелкая моторика дико развивается)
это час или секунда? :)
теперь за полторы минуты еее)
главное понять технику, формулы
В очередной раз мой мозг взорван информацией и способом ее подачи. Ты великолепен!
Блин, я так и не понял о чём эта статья ):
У меня младший брат собирает кубик где-то за минуту)) Думаю, ему будет интересно это почитать
да, жаль, что не 42)
а я треугольник собирал!!!!!! змейку и петнашки двигал)))) и в дуррака могу просчитать карты противника... но кубик рубик!!!!!!!!!! собирал както по два ряда и сторону!!!! но чтоб весь..........
Алгоритм бога можно вычислить на основе того алгоритма, которым пользовалась эта группа людей, при чем это не так сложно ))) было бы желание сидеть над каждым действием...
Нет, это не так. Я там написал, что они не искали оптимальные решения для каждого состояния.
Не искали... но могли бы ))
наверно не хотят...
Да, не зря я моделировал самообучающегося робота из спичечных коробков для игры в крестики-нолики....)
В избранном. Да здравствует математика во всех её проявлениях.
пойду куплю Кубик Рубика, буду крутить.
спасибо за статью!)
"мне пофиг за сколько собирают кубик рубик другие, но дальтоник Вася уверен, что собирает за пять минут" (С)
если я не ошибаюсь, то вашу задачу решит метод ветвей и границ - тот самый искомый "алгоритм Бога"
Было бы все так просто, ему бы в шахматах бы не было равного :-)
Но вообще вы правы, я не уточнил, что алгоритм Бога должен быть практическим, то есть не требовать огромных объемов памяти или процессорного времени.
Но если рассуждать по-вашему, то даже метод ветвей и границ излишний — простым перебором можно обойтись :-)
полный перебор будет на несколько порядков сложнее.
как нибудь на досуге подумаю над этой темой
Из определения следует, что числом бога может быть число меньше 20ти, то есть, например 19
Или уже жестко доказано, что есть конфигурации, в которых 20 ходов - это алгоритм бога?
сначала считали, что это число 18, пока в 1995 году не нашли позицию из которой 20
как эта самая большая цифра называется?
Ссылка на статью была бы не лишней.
Кстати, вот это предложение "Существуют такие конфигурации Кубика Рубика, которые требуют 20 ходов для решения — это стало известно еще в 1995 году." абсолютно бессмысленно. Может, вы хотели написать "требуют не менее 20 ходов"?
Ссылка есть — в словах «несколько исследователей заявили».
Предложение смысла не лишено. До 1995 года о существовании таких конфигураций не было известно, и максимально сложная известная конфигурация требовала 18 ходов для решения.
Видимо, я неправильно понял, что именно вы имели в виду под словом "требуют". Привык о таких вещах в чуть более формальном языке читать :)
У меня недавно появился кубик, до сих пор "парюсь". И бросаю это дело со словами:"Да ну вас нафиг!"))
Я в своем маленьком городе, в маршрутке, наблюдал парня, который собирал его секунд за 40, потом хитро оглянулся и спрятал в карман.
http://www.vest-news.ru/article.php?id=13838
гугл подсказал что у меня в городе живет чемпион-спидкубер, приятно 8)
помню я эту комбинаторику на 1м курсе)) теперь все, закончилась вышка у нас.
и кстати, у меня никогда не было кубика-рубика
занятие для гиков
Был у меня не кубик а светофор такой советский пять цветов в каждом цвете по пять шариков.Кароче я его один раз хотела честно собрать естественно не получилось я тогда эти шарики выковыривала и на место ставила .Потом когда в школу пошла узнала что пацаны так же с кубиком рубиком поступают вот.
у меня раритетный кубик. на одной из граней выдавлено "сделано в СССР".
а вы - мой новый кумир. в школе математичка не смогла мне объяснить "зачем?", а теперь я поняла - так жить интереснее. присоединяюсь к комментарию "замуж" :)
я ваша поклонница) только вы умеете объяснить с юмором и крутым оформлением какие=то вообще необъяснимые вещи !
Отличный блог! Даже потрясает насколько интересно и занимательно Вы пишите! Спасибо.
Пишите ещё. Больше пишите .)
Кубик Рубика примирил меня с действительностью и избавил от необоснованных амбиций, начинавших во мне зарождаться. Я была студенткой Архитектурного ВУЗа, когда узнала, что кубик Рубика изобрел преподаватель для развития пространственного мышления у студентов-архитекторов. Вспомнила свои пытки-попытки собрать больше одной грани и ушла из ВУЗа (не только из-за кубика Рубика, конечно, но его предназначение стало сильным потрясением для меня).
в детстве у меня была инструкция по которой я училась собирать кубик Рубика, недавно он попался мне в руки - и... я все забыла!
Мне, конечно, стыдно, но я все-таки рискну и спрошу. Ведь возможен вариант, что число Бога равно 19. Не пытаясь найти именно оптимальный способ сборки, разве мы сможем утверждать, что число равно 20? Мы можем лишь доказать, что оно не больше 20. Объясните, если не прав.
у меня так и не получилось собрать его :(
То есть собрать кубик простому смертному в принципе невозможно?
хорошая ,милая статья)
почему невозможно-возможно, сам Рубик свой кубик 3 месяца собирал, но ничего ,собрал же)
Я тоже умею собирать, это довольно несложно)
Хочу научится 4 на 4 собирать , а подруга уже 5 на 5 во всю собирает.
интересно это)
да вообще крутые головоломки у Рубикс компани_)
Даже википедия яснее разъясняется!
шикарная статья
первая,которую я внимательно тут прочитала