В 1979 году английский писатель Дуглас Адамс в своей фантастической книге «Автостопом по Галактике» дал ответ на «Самый Главный Вопрос Жизни, Вселенной и Вообще», который должен был решить все проблемы разумных рас. Для тех, кто не в курсе: по сюжету семь с половиной миллионов лет сверхмощный компьютер искал ответ на задачу и получил его, выдав цифру... 42.
А в реально мире на протяжении 65 лет математики по всему миру пытались решить своеобразную головоломку и найти три числа, сумма которых в кубе составила бы 42. И, кажется, им, наконец, это удалось.
О решении этой тупиковой головоломки, представляющей из себя диофантово уравнение, вы узнаете в конце статьи, а пока поговорим о «планетарном суперкомпьютере».
Впервые о «супервычислениях» заговорили еще в 1920-х годах, когда IBM собрала для Колумбийского университета свой табулятор — первую ЭВМ, работавшую на перфокартах. Сам термин появился в конце 1960-х годов в Ливерморской национальной лаборатории США и компании-производителе компьютеров CDC.
Что это за силища такая?
Charity Engine основан на «добровольных вычислениях» и состоит из многих тысяч домашних персональных компьютеров, связанных воедино при помощи технологий распределенных вычислений.
Принцип заключается в том, чтобы выполнять огромные, дорогостоящие вычислительные работы и разбивать их на тысячи маленьких кусочков, каждый из которых достаточно прост, чтобы домашний ПК мог работать в качестве фоновой задачи. Как только компьютер завершил свою часть головоломки, он отправляет обратно правильный ответ и зарабатывает деньги на благотворительность и на «призовой фонд» себе.
Сетка сдается в аренду как гигантский суперкомпьютер. Вся прибыль делится 33:33:33 между компанией основашей Charity Engine, благотворительными организациями и «призовым фондом». Charity Engine, как правило, добавляет менее 10 центов в день к энергозатратам ПК и может принести до 10 долларов на благотворительность и призы - на каждый 1 доллар потребленного электричества.
На сайте компании сказано, что «это самый эффективный способ пожертвовать на благотворительность из когда-либо изобретенных».
Приложение для ПК
На деле, Charity Engine - это бесплатное приложение для ПК, основанное на программном обеспечении BOINC Университета Беркли под управлением The Worldwide Computer Company Limited. Проект работает, продавая запасные домашние вычислительные мощности университетам и корпорациям, затем распределяя прибыль между восемью партнерскими благотворительными организациями и периодическими розыгрышами денежных призов для пользователей – теми, кто запускает программное обеспечение Charity Engine BOINC на своих домашних компьютерах.
Компания была основана бывшим журналистом Марком МакЭндрю, который писал научно-фантастический роман с похожей организацией процесса вычиселений. От идеи книги он отказался в пользу создания сети в реальной жизни с помощью профессора Дэвида Андерсона из Калифорнийского университета в Беркли. BOINC – его детище. Компания была зарегистрирована в 2008 году, но не начинала работать до 2011 года.
Компания получила 70 000 евро инновационного финансирования. В августе 2014 года проект Rosetta @ home сообщил, что Charity Engine предоставил более 125 000 новых компьютеров в свою сеть.
В январе 2017 года Charity Engine был отмечен как значительный вклад в решение проблем сворачивания белка в статье «Определение структуры белка с использованием данных последовательности метагенома», опубликованной журналом Science.
Ложка дегтя
Поговаривают, что приложение задумывалось для организации заработка биткоинов на постоянной основе. И хотя криптовалюта существует в своем обособленном мире, эта догадка не кажется такой уж нереальной.
Ну, а теперь обещанная задача и ее решение
Задача звучит следующим образом: может ли любое число от 1 до 100 быть выражено как сумма трех кубов?
Если записать формулу 1954 года, то получится следующее: х3 + y3 + z3 = K.
K в данном случае — любое число от 1 до 100. Соответственно, нужно было определить все три неизвестные переменные для каждого числа K в этом промежутке.
В последующие десятилетия были найдены решения для простых чисел. В 2000 году математик Ноам Элкис из Гарвардского университета опубликовал алгоритм, который помог найти более сложные. К 2019 году нерешенными остались только два самых сложных числа: 33 и 42.
Математик Эндрю Букер с канала Numberphile опубликовал решение задачи для числа 33, написав собственный алгоритм. Для этого ему понадобился мощный суперкомпьютер Университета Advanced Computing Research Center, а решение удалось получить всего за три недели при помощи сети Charity Engine.
Итак : 42.
Суммарно вычисления заняли свыше миллиона часов, но ответ все-таки был найден:
X = -80538738812075974
Y = 80435758145817515
Z = 12602123297335631
Таким образом, полное уравнение выглядит следующим образом:
(-80538738812075974)3 + 804357581458175153 + 126021232973356313 = 42.