Обратная связь

Анатолий работал программистом в Google. Точнее, не совсем программистом, а учёным (scientist). Программистом он был раньше, но его образование и склад ума позволили ему подняться выше, и теперь он не пишет код, а разрабатывает алгоритмы, математические модели, решает связанные с этим проблемы.

Сначала Анатолий работал в отделе переводов (Google Translate), потом ему предложили перейти в более перспективный отдел искусственного интеллекта (AI). В общих чертах направление оставалось то же, машинное обучение, но в AI задачи были гораздо шире и универсальнее, и разрабатываемые там инструменты применялись и для переводов, и для управления автомобилями, и для Google Assistant, и даже частично для поиска, хотя у ребят из поиска много собственных наработок, тоже очень крутых, но более специализированных именно под поисковую выдачу.

Разрабатываемые алгоритмы и инструменты были уже настолько развиты, что даже Анатолий в глубине души их побаивался. Нередко случалось, что этот AI предугадывал его мысли. Когда алгоритм AlphaZero разгромил в шахматы DeepBlue после всего четырёх часов самообучения, потом показал не менее внушительные успехи в го, Анатолий захотел дать этом алгоритму какую-нибудь более интересную и сложную задачу. Но какую? Прогноз погоды? Диагностика болезней? Интересно, но это требует доступ к массивам данных, которые являются закрытыми, и для того, чтобы их получить, нужно обосновать необходимость, а с этим были проблемы.

Тогда Анатолию пришла в голову идея применить компьютерные алгоритмы для построения физических теорий, а если повезёт, то и получить "Единую теорию всего", т.е. универсальную теорию, объясняющую все физические процессы. Ведь компьютеры умеют делать преобразования формул, выводить одни формулы из других. И если, например, в компьютер ввести законы Кеплера, по которым движутся планеты вокруг Солнца, то компьютер, перебирая разные варианты формул, нашёл бы из них наиболее простую, из которой эти законы следуют - это получился бы ньютоновский закон тяготения. Так почему бы не ввести в компьютер известные законы квантовой физики и гравитации с тем, чтобы он нашёл наиболее простую формулу, из которой математически следуют и те, и другие?

В качестве тестового задания на правильность будущей программы Анатолий взял те самые законы Кеплера. Для себя сформулировал правило: в процессе написания и отладки не давать программе подсказки, а лишь модифицировать алгоритм по максимально общим правилам. Потому что на следующем, "боевом" задании подсказок ведь уже не будет.
Сначала пришлось искать способы оптимизировать перебор. Ведь даже одну и ту же формулу можно записать множеством различных способов, и перебор вариантов оказывается слишком долгим. Эта задача во многом решалась уже известными ему алгоритмами из компьютерных переводов и теории игр. Потом обнаружилось, что формулы закона тяготения не подходят, потому что из них не следуют законы Кеплера - тело может лететь по параболе или гиперболе, а не только по эллипсу. Пришлось допустить существование других решений. Тогда компьютер выдал формулу "a" - наиболее короткую, из которой, по его мнению, всё следует. И действительно - если никаких законов нет, тела могут летать как угодно, ничто не мешает им выполнять и законы Кеплера, коль уж мы разрешили существование и других вариантов. Получается, нужно требовать законы Кеплера как единственное решение, но при каких-то начальных условиях, допуская другие решения при других начальных условиях. Это существенно усложнило задачу.

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

X" = R/R3

без масс, силы и гравитационной постоянной, так что Анатолий даже не сразу его узнал. Но быстро понял, что его программа не обучена вводить новые сущности вроде "масса" и "сила", которых в законах Кеплера нет, они появляются только из других законов Ньютона. Для задания траектории нужно определить направление силы, закон должен быть в векторной форме, иначе тело может летать как угодно. А метр и секунду можно выбрать такими, чтобы гравитационная постоянная была равна единице. Так что тестовое задание было пройдено, и можно было переходить к следующим, уже более реальным проблемам.

Задача увлекла Анатолия, и он посвящал ей всё свободное время, зачастую в ущерб основной работе. Потому что для него основной стала эта программа. Иногда было какое-то продвижение, и казалось, что успех близок, иногда, осознавая причины, по которым программа в очередной раз не смогла выдать результат, ему казалось, что всё безнадёжно. Анатолий понимал, что задача очень сложна для него самого, но при этом и не мог предложить выполнить какие-то части своим друзьям и коллегам программистам, потому что они, даже если понимали что-то в физике, вряд ли охватили бы проблему настолько, чтобы самостоятельно решать даже мелкие проблемы. А рутинного программирования в этой задаче практически не было.

Вот некоторые из препятствий, которые возникли перед Анатолием.
Когда он решил все проблемы формальных обозначений (как оказалось, в привычных физических формулах неожиданно много подразумевается неявно, они далеки от формального описания явлений), ввёл формулы квантовой механики (использовал Стандартную модель), специальной и общей теории относительности и некоторые наблюдаемые космологические законы (в частности, закон Хаббла), программа начала завершаться по ошибке, и в результате отладки Анатолий обнаружил, что введенные формулы формально противоречат друг другу, а он не предусмотрел этот вариант. Собственно, мог бы и догадаться, ведь действительно квантовая механика и теория относительности предсказывают разное поведение, например, чёрных дыр. Что же делать? Считать исходными данными не формулы теорий, а результаты экспериментов - задача сильно меняется и становится фактически неразрешимой. Считать формулы приблизительными и работающими в определённых пределах - тоже сильно меняет задачу, это уже не просто перестановка символов по определённым алгоритмам, а творчество. Анатолий выбрал этот вариант, и ему пришлось отказаться от изначального принципа не давать подсказок. Он начал задавать точность и границы применимости законов, основываясь на своём здравом смысле и знании физики. Поиск общих формул пришлось существенно переделать, добавив возможность их модификации, не меняющей результат в указанных пределах более заданной погрешности.
С таким расширением компьютер начал выдавать формулы классической механики и термодинамики. Это, хоть и не было конечной целью, но было важной победой, которая окрылила Анатолия и дала прилив энтузиазма. Кроме того, у программы уже накопилась весомая база тестовых входных данных, с которыми она успешно справлялась. Сюда входила и классическая механика, и уравнения Максвелла, и даже Специальная теория относительности.

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

- Анатолий, физика - это не подбор формул, это объяснение устройства мира. Допустим даже, выдаст твоя машина какие-нибудь формулы, и что? Разве мир от этого станет понятнее?
- А разве нет? Мы сможем предсказывать результаты экспериментов.
- Предсказать результат эксперимента - бесполезная задача. Я сам тебе могу предсказать результат любого эксперимента.
- Как?
- Я его поставлю и узнаю результат. И чем это будет отличаться от предсказания по формулам? Разве что, тем, что предсказание по формулам может оказаться ошибочным.
- Но ведь разве не наличие эксперимента, способного опровергнуть теорию, является критерием научности теории? Это критерий Поппера, - заметил Анатолий.
- Да, но не совсем. Есть ещё проблема ландшафта, свободные коэффициенты. Если найденная компьютером формула будет опровергнута экспериментом, компьютер сможет выдать другую формулу. Или чуть подправить имеющуюся. Фактически для любых входных данных он найдёт подходящую формулу. А потому это нельзя рассматривать как научную теорию.
- Но разве люди делают не то же самое? Например, компьютер на основании законов Кеплера нашёл закон гравитации, повторив путь Ньютона. Почему же это не наука?
- Потому что Ньютон нашёл не формулу, а предложил объяснение, он ввёл понятия гравитации, дальнодействия, массы... Теория должна не только предсказывать, но и объяснять, иначе это не теория.
- Физики далеко не всегда утруждают себя объяснениями, а некоторые даже считают, что это вредно. Разве спин, заряд, масса и прочие характеристики элементарных частиц - это не абстрактные свойства?
- Да, и в этом слабость имеющейся теории, - ответил Саша.
- Хорошо, пусть так. Но разве необъясняющая теория совсем бесполезна? Предсказание - уже неплохо, а объяснение можно придумать и позже.
- Да, это может быть полезной информацией для размышления, для построения теорий. Целью является не предсказание результатов, а умение придумывать эксперименты и условия, которые дадут нужные результаты. Мы не решаем задачу предсказания, как себя поведёт, скажем, ведро с микроволновым излучателем внутри, мы ищем, какой материал может дать сверхпроводимость при комнатной температуре. Фактически это обратная задача, а сухие математические формулы только в наиболее примитивных случаях оказываются обратимы. Более того - настоящая теория должна давать представление, какие результаты осуществимы, а какие нет, к чему имеет смысл стремиться. Это намного важнее и сложнее, чем уметь предсказывать. Без объясняющей теории, например, никому не пришло бы в голову создать паровую машину, атомную станцию или квантовый компьютер.
- Но разве, если бы у Ньютона была формула зависимости ускорения планеты от расстояния до Солнца и направления к нему, ему не проще было бы придумать закон тяготения?
- Тут вопрос в том, откуда эта формула получена и как подана. Если бы Ньютону эту формулу, скажем, дал Лейбниц - да, это могло бы натолкнуть на мысль. А если бы ребёнок написал на песке вперемешку со всякими случайными сочетаниями значков, Ньютон не обратил бы на неё внимания. Чтобы результат твоей программы заметили и восприняли всерьёз в научном обществе, у тебя должна быть ученая степень, публикации в научных журналах, заметный индекс цитирования. А иначе это будет восприниматься примерно как если бы фотограф пришёл в компанию художников, показал свои фотографии и сказал, что у него получается лучше (реалистичнее), чем у них. В лучшем случае такого фотографа проигнорируют, в худшем - поднимут на смех. Примерно как поступают с многочисленными изобретателями вечных двигателей.
- Саша, а ты не можешь мне помочь, выступить соавтором?
- Чисто по-человечески мне интересно то, чем ты занимаешься. Но, как представитель науки, я на самом деле не считаю голую математическую формулу физикой. Давай ты, если получишь интересные результаты, покажешь их мне. Возможно, и интерпретация придумается, а тогда это уже может и на нобелевку претендовать. Зависит, конечно, от того, что получится (и получится ли вообще).
- Хорошо, договорились. Спасибо.

Ещё через полгода напряжённой работы по совершенствованию алгоритма и подбору удачного сочетания входных данных появился первый набор формул. Он занимал примерно полстраницы печатного текста. Анатолий очень надеялся, что это были формулы, по которым на самом деле работает наш мир. К сожалению, они содержали дифуры и тензоры, которые трудно было понять и интерпретировать, и вообще, выглядели, как тарабарщина, случайный набор символов. И "упростить" их не было никакой возможности, ведь компьютер с этой задачей справлялся лучше, чем человек, и раз он выдал их в таком виде, значит, другие варианты могли быть только сложнее. Тем не менее, Анатолий не останавливал программу, которая продолжала время от времени выдавать наборы формул, подходящие под начальные условия, всё большей длины. Ведь более длинная формула может оказаться для человека понятнее, чем более короткая. Так и в компьютерных программах - наиболее компактный вид может казаться совершенно непостижимой абракадаброй, а понятный человеку текст будет во много раз длиннее. Это именно та проблема, о которой Саша говорил в применении к физике. Сгенерированный машиной "оптимальный" исходный код не позволит в нём разобраться и понять алгоритм, хотя и позволит его скомпилировать и запустить. Более того: требование компактности означает максимальную плотность информации в каждом символе, а при таких условиях информация выглядит как белый шум. Как файловый архив, запакованный неизвестным архиватором.

Получив около сотни вариантов, Анатолий остановился. Точнее, программу-то он не остановил, но рассматривать их перестал, разумно посчитав, что этим можно заниматься вечно. Отправил один из вариантов Саше, не особенно рассчитывая на то, что Саша увидит смысл и придумает интерпретацию. Анатолий тем временем решил подойти с другой стороны: испытывать формулу на вырожденных случаях, когда некоторые из параметров принимают нулевое значение, в надежде, что в таком варианте удастся что-ниудь понять. Нулевая масса и энергия вопреки ожиданиям упростили уравнения не принципиально, описываемый мир не свёлся к вакууму с порождаемыми в нём парами виртуальных частиц. Обнулив ещё несколько параметров, смысла которых Анатолий не понимал, он получил уже более простую формулу, но что с ней делать, он по-прежнему не знал. Его уже начала охватывать апатия: действительно, какой смысл в формуле, которая при нормальных условиях даёт те же результаты, что уже известные законы квантовой теории и теории относительности, но при этом выглядит как криптограмма?

Тут позвонил Саша.
- Саша, привет! Неужели у тебя что-то получилось понять в тех формулах?
- Ну... Не могу сказать, что много, но кое-что я понял. Хотя пришлось немало повозиться. Хорошо, что компьютерные программы позволяют оперировать с формулами, иначе я бы безнадёжно закопался.
- Расскажи!
- Чтобы понять, что к чему, я последовательно устанавливал разные переменные в ноль и смотрел, какой вид примут формулы.
- Я пробовал делать так же! И что у тебя получилось?
- У меня получилось разобраться в том, какие переменные в формулах соответствуют каким физическим величинам в современных физических теориях. Точнее, большинство из них.
- И?..
- Похоже, формулы бесполезны, как я и предполагал. Помимо известных физических величин в формулах есть дополнительные параметры, которые непонятно, что означают, но влияют на результат экспериментов. И с их помощью решаются противоречия: в разных якобы противоречивых экспериментах устанавливается разное значение дополнительного параметра, из-за чего получается разный результат. Но что это за параметр, как его заранее узнать - совершенно непонятно. Это просто подгонка параметров, та самая проблема ландшафта.
- Хм, да. Это следовало ожидать. Что ж, спасибо. Отрицательный результат - тоже результат.
- Не за что. У меня была небольшая надежда, что построить физическую теорию компьютером возможно. Быть может, подкрути что-то в своей программе, запрети ей вводить дополнительные параметры?
- Попробую, но ей и так запрещено их вводить без необходимости...
- Ты хочешь сказать, что добавление этих параметров было необходимо?
- Да. Ну либо это ошибка в программе.
- Странно. В таком случае я ещё подумаю над ними. И ещё вопрос к тебе. Как ты переходил от микромира к общим законам? Может ли твой алгоритм выдать формулы термодинамики, основываясь на свойствах отдельных молекул газа?
- Хороший вопрос. Я потратил уйму времени на решение этой проблемы. Но правильного решения, которое мне самому нравилось бы, я так и не нашёл. Поэтому пришлось сделать "костыль" - явные правила перехода от законов микромира к макромиру.
- Это неудивительно. Физики и сами толком не понимают этот переход. Ведь все физические законы симметричны относительно времени (если говорить несколько упрощённо), а у законов термодинамики время несимметрично (энтропия уменьшиться не может).
- Вот оно как.
- Ага. И ещё вопрос. Закладывал ли ты гравитационную и инертную массу как одну величину или как две разных?
- Две разных.
- Это хорошо, спасибо. Ну пока, на досуге попробую ещё покрутить твои формулы Вселенной. :)

Прошло две недели - Анатолий искал возможные ошибки в программе, Саша пытался найти смысл в дополнительных параметрах.
Саша опять позвонил.
- Привет! Представляешь - кажется, я понял смысл параметров!
- Расскажи.
- Они отвечают за сознание и душу.
- Ты издеваешься? Какая душа в физических законах?
- Ok, расскажу по порядку. Я посмотрел, какое значение параметра "омега" предполагается в наблюдаемых физических экспериментах, и как оно изменяется. Как правило, оно было меньше, чем десять в восьмой степени, и изменение его в этих пределах на результат не влияло. Результат оказывался иным, только если задрать омегу ещё выше - на десять в девятой или больше. В этом случае решение перестаёт быть устойчивым, и результат может быть любым, произвольным. Примерно как при появлении "кротовины" в искривлённом пространстве-времени, т.е. "дырки" в другое место пространства и в другое время. Любые, самые небольшие изменения в условиях эксперимента могут приводить к сколь угодно большим отличиям в результате. Отличия в рамках квантовой неопределённости могут приводить к вообще разным реальностям в итоге.
- Звучит не очень обнадёживающе. А при чём же здесь душа?
- Есть лишь некоторые эксперименты, для результата которых нужно установить большое значение омега. Например, взрыв водородной бомбы. При небольшом омега на модели ядерного взрыва возникает цепная реакция в атмосферном кислороде, а потом и в других элементах, и вся планета взрывается. Чтобы этого не произошло, нужно значение омега как минимум два на десять в девятой. Формально вероятность того, что цепная реакция не начнётся, есть и при небольших омега, но эта вероятность пренебрежимо мала, порядка десяти в минус тридцать пятой степени.
- Хм. И что же - получается, человечеству крупно повезло, что при испытаниях оказался большой омега?
- Не совсем. Ты ведь знаком с эвереттовской интерпретацией квантовой механики?
- Это которая многомировая? Когда есть много параллельных реальностей, в которых события происходят по-разному, и которые могут взаимодействовать между собой?
- Да, именно она. Так вот, можно сказать, что омега влияет на то, в какой из реальностей окажется наблюдатель.
- Погоди... Ты хочешь сказать, что люди взорвали свою планету в большинстве реальностей, а сами оказались на целой планете, потому что выбрали такую реальность?
- Именно. Им больше некуда было деваться, потому что омега в замкнутых системах сохраняется.
- Омега сохраняется? Ты не говорил.
- Да.
- Интересно. И это объясняет, почему мы не наблюдаем другие цивилизации - они себя взрывают, как это сделали и мы? И каким же экспериментом можно проверить эту теорию? Взрывать ещё одну водородную бомбу не хочется.
- Застрелиться. Или выпрыгнуть из окна.
- Что, прости, не расслышал?
- Умереть любым способом. Закон сохранения омега не даст сознанию пропасть, возникает неопределённость, и для наблюдателя (то есть, для умирающего) реальность может измениться на любую другую.
- Но ведь для других наблюдателей он умрёт?
- Конечно.
- Таким образом, это может подтвердить теорию только для себя, но для других это подтверждением не будет, верно?
- Да. С поправкой: сам наблюдатель не обязательно будет помнить начало эксперимента, сохранение памяти при смене реальности никто не обещал.
- Ты хочешь сказать, что компьютер придумал переселение душ, реинкарнацию? И обосновал её физически, она следует из наблюдаемых нами физических экспериментов?
- Получается так.
- Ничего себе. Хорошо, а существуют ли более "физические", объективные способы подтвердить или опровергнуть эту теорию?
- Для этого нужно, чтобы все наблюдатели попали в ситуацию с большим омега, влияющим на результат. Помимо термоядерного взрыва это можно наблюдать в эффекте плацебо.
- А, так эффект плацебо тоже объясняется этим омега?
- Да. Слушай дальше. Я обнаружил, что в нормальном состоянии омега принимает значения порядка десять в пятой, и это практически не влияет на результаты экспериментов. Но я всё-таки решил перепроверить, точно ли всё будет так же, если омега сделать нулевым. И знаешь, что обнаружил?
- Звучит интригующе.
- При нулевом омега протон является нестабильной частицей. Вселенная полностью рассыпается за несколько микросекунд. Нет необходимости взрывать планету водородной бомбой, взрывается сама Вселенная, причём постоянно, а мы этого не наблюдаем только из-за того, что наше сознание оказывается в той реальности, в которой она уцелела.
- Потрясающе! Это похоже на атропный принцип (Вселенная должна быть такой, в которой может появиться человек), только по отношению не к человеку, а к сознанию. Можно сказать, что сознание удерживает этот мир. А, может, и создало его? Погоди, то есть, омега в выданных компьютером уравнениях - это бог, что ли?
- Да, можно и так сказать. Проявление божественной сущности.
- Что-то я сомневаюсь, что за это могут дать Нобелевку.
- Ты, похоже, не понял. Я тебе говорю о бессмертии души и возможности сознательно выбирать реальность (только для этого нужно сначала найти решения этих уравнений на граничных условиях и интерпретировать эти решения, но это вряд ли вызовет серьёзные затруднения), а ты про какую-то там премию.
- Мда...
- Меня вот только одна вещь немного беспокоит...
- Какая же?
- Обратная связь.
- Поясни. Какая обратная связь?
- Плацебо практически перестаёт действовать, если пациент знает, что принимает плацебо. Даже если он знает про эффект плацебо.
- Ты хочешь сказать, что эти законы работают, только пока мы их не знаем?
- Да, такое может быть. В одном из дифференциальных уравнений есть обратная зависимость, но оно не имеет устойчивых решений, поэтому я не знаю, как его интерпретировать.
- И если мы узнали про омега, на котором держится Вселенная, она может взорваться?
- Пока не взорвалась. Возможно, Вселенная найдёт другой выход. Я пока рассчитываю, как можно менять реальность направленно и осознанно. Знаешь, тут есть некоторые интересные варианты. Я, пожалуй, возьму на работе отпуск и прилечу к тебе. Там есть, что обсудить, и над чем поэкспериментировать. Ну и нужно подготовить публикацию совместно с тобой, я ведь почти ничего не знаю про алгоритмы, которые ты использовал, а их нужно будет описать в статье. Надеюсь, они не под NDA? Ты можешь публиковать эту работу от своего имени, или права будут принадлежать Google? Ты не против?
- Я только "за", приезжай!
- Договорились, завтра буду. Пока!

Оба двигателя самолёта, в котором летел Саша, отказали. Это объяснили попаданием в них птиц. Самолёт разбился.
Наверное, Саша теперь живёт в какой-то другой, параллельной реальности. А возможно, это Вселенная нашла такой выход, чтобы не распасться на кварки после публикации "теории всего". А может быть, Саша начал экспериментировать с выбором реальности, получил нестабильность, и попадание птиц в двигатели оказалось более вероятным, чем придуманный Сашей вариант.

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