Как стать автором
Обновить
3171.42
RUVDS.com
VDS/VPS-хостинг. Скидка 15% по коду HABR15

Червь, которого не может взломать ни один компьютер

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров6.2K
Автор оригинала: Claire L. Evans

Когда я запустила первую симуляцию червя, ветра Санта-Аны дули уже сильно. Я не хакер, но это было просто: открываешь оболочку терминала, вставляешь команды из GitHub и наблюдаешь за бегущим по экрану каскадом символов. Совсем как в фильмах. Пока я искала в пролетающем перед глазами коде узнаваемые слова — neuron, synapse — ко мне подошёл друг, чтобы пойти со мной на ужин. «Секунду. Я тут прогоняю на компьютере червя», — крикнула я ему из офиса.

В корейском ресторане царил хаос: ветер клонил пальмы и гонял магазинные тележки по парковке. Атмосфера казалась сюрреалистичной, похожей на подкаст, проигрываемый с удвоенной скоростью. «Чем ты там занимаешься? Киберпреступлениями?», — спросил друг. Я попробовала ему объяснить: «Нет, не червя типа Stuxnet. Настоящего живого червя».

Когда я добралась домой, было уже темно, а в Альтадене уже загорались первые искорки пожаров. На моём ноутбуке меня ждал червь в объёмной пиксельной коробке. Заострённый с обоих концов, он висел в тумане из частиц, странно прямой и неподвижный. Разумеется, он никогда не был живым. Но мне он казался мертвее мёртвого. «Браво», — сказал мне Стивен Ларсон, когда я написала ему тем же вечером, — «вы добились состояния «hello world» в симуляции».

Ларсон — один из основателей OpenWorm: опенсорсного проекта по разработке ПО, с 2011 года пытающегося создать компьютерную симуляцию микроскопической нематоды Caenorhabditis elegans. Его цель — ни больше ни меньше полный цифровой близнец реального червя, точный вплоть до молекулы. Если проекту OpenWorm удастся этого добиться, то это будет первое виртуальное животное, а также воплощение всех наших знаний не только о C. elegans (одном из самых хорошо исследованных животных в науке), но и о том, как мозг взаимодействует с миром, создавая поведение: участники OpenWorm называют это «Святым Граалем» системной биологии.

К сожалению, пока им не удалось этого добиться. Симуляция на моём ноутбуке получает данные из экспериментов, проведённых на живых червях, и преобразует их в вычислительный фреймворк c302, который, в свою очередь, управляет симулируемой мускулатурой червя C. elegans в среде динамической жидкости — по сути, это симуляция того, как червь, извиваясь, перемещается в плоской капле слизи. Для генерации пяти секунд такого поведения требуется примерно десять часов вычислений.

За десять часов может произойти многое. Зола, поднятая ветром, может плавно переместиться с подножий холмов в спящий город. Той ночью по совету Ларсона я изменила временные параметры симуляции, чтобы сделать ещё один шаг от «hello world», глубже в зловещую долину жизни червя. Следующим утром я проснулась в странном оранжевом тумане. Когда я, едва разлепив глаза, открыла ноутбук, то моё сердце затрепетало от двух новостей: Лос-Анджелес горел. А мой червь начал двигаться.

Здесь вы можете задаться вполне резонным вопросом. Когда мы сидели в корейском ресторане, мой друг тоже задал его. Вопрос был таким: «Э-м-м-м… А зачем?» Зачем из всего многообразия нашего зелёного мира и из всех проблем, которые стоит решать, кто-то выбрал потратить тринадцать лет на попытки запрограммировать жизнь микроскопического червя?

В процессе ответа на вопрос я процитировала одно из самых известных изречений физика Ричарда Фейнмана: «То, что я не могу создать, я не понимаю».

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

Нематода C. elegans — это крошечный червь толщиной примерно с волос, состоящий из менее чем тысячи клеток. Из них только 302 клетки — это нейроны, практически минимум для формирования мозга. «Помню, после рождения моего первого ребёнка я очень гордилась, когда он, наконец, научился считать до 302», — рассказывает нейробиолог Нетта Коэн, работающая в лаборатории изучения червей Лидсского университета. Но в крошечном размере нет ничего постыдного, утверждает Коэн: обладая столь малым, C. elegans способен на многое. В отличие от его неприятных родственников, это не паразит, отдавший необходимость в выживании на аутсорс более крупным организмам, а так называемое «свободноживущее» животное. «Оно может размножаться, есть, добывать корм, убегать. Оно рождается и развивается, стареет и умирает, и всё это в масштабах одного миллиметра», — рассказывает Коэн.

Фанаты червей сразу расскажут вам, что за работу по исследованию C. elegans было получено не меньше четырёх Нобелевских премий; это первое животное, у которого выполнили секвенирование генома и картографирование нейронов. Но между схемой и руководством по эксплуатации есть разница. «Мы знаем, как всё соединено, но не знаем динамики. Можно подумать, что это идеальная задача для физика, специалиста по computer science или математика», — говорит Коэн.

И они пытались её решить. Автором первой симуляции C. elegans стал Сидней Бреннер, превративший ничтожного червя с компостной кучи в суперзвезду науки в своей прорывной статье 1986 года «The Structure of the Nervous System of the Nematode Caenorhabditis elegans», благоговейно называемой в кругах исследователей червей «Мозгом червя». Команда Бреннера провела тринадцать лет в кембриджской лаборатории, тщательно разрезая червей и фотографируя их электронным микроскопом. Они пользовались миникомпьютером первого поколения, работавшим ещё на перфокартах, и с его помощью превратили свои данные в рудиментарную карту нервной системы червя.

С тех пор каждые десять или двадцать лет специалисты по computer science стремятся дополнить и расширить результаты работы Бреннера. Но биология обычно быстро остужает пыл компьютерщиков. В 2003 году специалист по computer science Дэвид Хэрел заявил, что симуляция C. elegans — «великая задача» биологии, в которой давно прошёл срок «крайне важного перехода от анализа к синтезу». Хотя Хэрел определённо был в этом прав, ему не удалось смоделировать ничего, кроме вульвы червя.

Нетта Коэн потратила большую часть своей двадцатилетней работы на публикацию прорывных вычислительных моделей, учитывающих синусоидальное движение C. elegans при перемещении по средам с различной вязкостью. Однако перемещение червя назад — это совершенно отдельная, нерешённая задача. И даже не спрашивайте, как червь двигается вверх и вниз (не говоря уже о том, зачем он это делает). Все данные, полученные нами о поведении C. elegans, взяты из наблюдений за ними в плоских чашках Петри с агар-агаром. Насколько мы знаем, в природе они могут вести себя совершенно иначе. «Почему бы и нет?», — со смехом говорит Коэн, — «Это биология».


Когда OpenWorm объявил в 2011 году о своих намерениях, Стивен Ларсон, инженер, «нашедший религию» в опенсорсе, думал, что если ему просто удастся собрать группу увлечённых компьютерных исследователей, то они смогут совершить прорыв в биологии и в симуляции. Спустя тринадцать лет энтузиазм заменило смирение. «Этот проект может стать подобным собору. Если его не смогу закончить я, то, по крайней мере, его смогут развить другие».

Возможно, дело в выгорании: руководство некоммерческим опенсорсным проектом в любых объёмах может истощить даже самого приверженного идеалиста. А может быть, дело в обманчивой простоте мозга C. elegans, по-прежнему не поддающейся анализу. Может быть и так, что просто неправильно выбрано время.

OpenWorm не проводит собственных исследований. Волонтёры проекта извлекают информацию из литературы по C. elegans, интегрируя в свою симуляцию любые данные, которые смогут найти. Поэтому они зависят от исследовательских лабораторий наподобие той, в которой работает Коэн, а эти лаборатории обычно медленно выдают данные, по-настоящему полезные для вычислительных моделей. Но примерно за последний десяток лет экспериментаторы усовершенствовали микроскопы и методики генетического анализа, что позволило генерировать более объёмные и качественные записи о мозге червя. В то же время появились инструменты машинного обучения, позволяющие обрабатывать все эти данные, а вычислительные мощности бьют все рекорды. Благодаря этому стечению обстоятельств Ларсон не теряет надежды. «Когда живёшь во времена практически экспоненциального технологического роста, нечто, раньше казавшееся безумным, оказывается возможным», — говорит он.

Я спросила у Нетты Коэн, участвующей в группе учёных советников OpenWorm, действительно ли это реализуемо. «Нужно начать с того, что же такое «это»? Что мы хотим получить?» Коэн — одна из 37 соавторов недавней статьи, в которой приведён новый план: использовать технологии генетической визуализации для активации одного за другим каждого из 302 нейронов в нервной системе червя и замерить влияние на все остальные. Сотни тысяч раз повторённые параллельные эксперименты позволят накопить достаточно данных, чтобы предоставить специалистам по компьютерам нечто, с чем можно работать: информацию, которая даже позволит выполнить полный «реверс-инжиниринг» червя.

Это очень амбициозное предложение, требующее беспрецедентного уровня взаимодействия примерно двадцати лабораторий по изучению червей. Нейробиолог Гэл Хаспел из Технологического института Нью-Джерси, ведущий автор статьи о реверс-инжиниринге, считает, что для реализации этого проекта может потребоваться до десяти лет, десятки миллионов долларов и примерно 100-200 тысяч живых червей. Проект сгенерирует больше данных о C. elegans, чем было собрано наукой за всё предыдущее время. И что же в конечном итоге получат те, кто займётся реверс-инжинирингом? «Потребуется куча людей и компьютеров, и они воссоздадут лишь то, на что способно крошечное животное», — рассуждает Хаспел.

На самом деле, нейробиолог иронизирует: он сравнивает проект с лунной программой НАСА — подобное предприятие двинет технологии вперёд, заставив инженеров создавать более совершенные инструменты, а учёных — работать в тесном взаимодействии. Хаспел считает, что симуляция червя — это возможность для возникновения нового типа науки, ведомой вперёд автоматизацией, big data и машинным обучением. И хотя конечным продуктом станет лишь червь — в каком-то смысле, самый сложный в мире Тамагочи — он может оказаться следующим шагом к пониманию более сложных нервных систем, а когда-нибудь — и человеческого мозга.


Прошлым летом один крипторазработчик опубликовал в соцсети X анимированный GIF виртуального червя C. elegans, извивающегося в окне приложения. Анимация была сгенерирована при помощи того же кода, который я запускал на своём ноутбуке; он свободно доступен в GitHub OpenWorm. «Если матрица червя работает на моём M1 Mac, то какова вероятность того, что мы находимся в базовой реальности?», — заявил он. Он подразумевал, что, возможно, черви — это мы и что кто-то запустил нас на космическом MacBook в каком-то более высоком слое реальности. Пост завирусился; разумеется, его лайкнул Илон Маск.

Когда я рассказала о «матрице червя» директору проекта OpenWorm Патрику Глисону, нейробиологу из Университетского колледжа Лондона, тот поморщился. «Некоторые люди приходят в проект, потому что стремятся к философским рассуждениям о подобных материях. И это нормально. Но мои приоритеты — в первую очередь, биология».

Если Ларсон — это Стив Джобс, то Глисон — Возняк: его интересует не столько создание суперчервя, сколько платформа, объединяющая мелкие отдельные модели биологических механизмов C. elegans. Вычислительное моделирование — распространённая в биологии практика; это малозатратный способ кодировать и тестировать теории в виде «мыслительных экспериментов» перед переносом их в чашки Петри. Обычно в биологических моделях рассматриваются какие-то небольшие аспекты изучаемого организма, допустим, горстка нейронов, управляющая движением. Когда дело доходит до моделирования, «нам не нужно, чтобы карта была равна территории, это помешает нашим целям», — объясняет занимающийся моделированием червей нейробиолог Эдуардо Искьердо из Технологического института Роуз-Халман. «Мы ищем то, что поможет в тщательном анализе».

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

Ларсон считает, что полное создание точной симуляции червя будет событием, не опровергающим наше современное понимание жизни, а расширяющим его. «Если мы скажем, что живой организм — это только система физических молекул, физически существующая в массе на планете, то не имеющий физических молекул компьютерный образ не может быть живым. Но если расширить определение жизни, связав его с информацией, то, возможно, понятие «жизнь» можно применить и к симулируемому животному. Тогда возникает вопрос: а важно ли это вообще?»

Я считаю, что это важно. Жизнь — это информация, но и нечто большее, что мы сильнее всего ощущаем тогда, когда это пропадает. Мне кажется, что в свете этого изречение Фейнмана можно поправить: к пониманию приводит не создание. Только попытавшись воссоздать жизнь, мы можем прийти к пониманию, насколько она незаменима.

Разумеется, я наблюдаю это прямо сейчас, окружённая разрушением. Воздух отравлен, хлопья белого пепла забились во все щели моего дома. Находясь на границе зоны эвакуации и ощущая запах дыма, я отвлекаюсь от реальности, продолжая запускать новые протосимуляции C. elegans. Смотря на них, я не могу не удивляться тому, насколько легко уничтожить жизнь и как сложно создать её. Чтобы сжечь за ночь жизнь, создававшуюся в течение сотен лет, достаточно одной искры; но чтобы приблизиться к созданию виртуального червя, требуются десятки лет, и, возможно, эта работа не будет закончена никогда.

Telegram-канал со скидками, розыгрышами призов и новостями IT 💻
Теги:
Хабы:
+42
Комментарии10

Публикации

Информация

Сайт
ruvds.com
Дата регистрации
Дата основания
Численность
11–30 человек
Местоположение
Россия
Представитель
ruvds