300 лет математики боялись считать живую природу — слишком сложно. Теория категорий укротила биосферу и эпидемии

300 лет математики боялись считать живую природу — слишком сложно. Теория категорий укротила биосферу и эпидемии

Когда переменных слишком много, на помощь приходит… абстракция?

image

Математики редко берутся за живую природу: слишком много связей, слишком много переменных, слишком трудно уложить жизнь в строгую схему. Джон Баез решил заняться решением этой фундаментальной проблемы. Ещё в 2011 году ученый из Калифорнийского университета в Риверсайде и Эдинбургского университета предложил заняться зелёной математикой – новым способом описывать биосферу и климат с помощью теории категорий. Замысел выглядел рискованно: один из самых абстрактных разделов математики собирались направить на одну из самых запутанных систем на Земле.

У привычных математических моделей есть понятный предел. Формулы хорошо работают там, где система сравнительно проста, а число связей можно удержать под контролем. Дальше начинается совсем другой масштаб. Переход от атомов к организмам, а затем к экосистемам приносит множество уровней, зависимостей и перекрестных влияний. Короткая схема в такой среде быстро перестает что-либо объяснять. По этой причине идея Баеза долго казалась почти фантазией: как может настолько отвлеченная математика помочь разобраться в мире, где любая часть связана с десятками, а то и сотнями других?

За 15 лет к Баезу присоединились более ста исследователей, работающих в прикладной теории категорий. У направления появились ежегодная конференция, научный журнал, профильный институт и исследовательская программа с государственным финансированием в Великобритании. Полного признания пока нет. Скепсис сохраняется, а многие участники области прямо говорят, что работают скорее вопреки общему настрою, чем при широкой поддержке. При всей настороженности у подхода уже появились прикладные результаты, прежде всего в эпидемиологии и безопасности искусственного интеллекта.

Теория категорий возникла в 1945 году как способ строго описывать отношения между математическими объектами. Со временем область превратилась в один из самых влиятельных разделов современной математики. Главная мысль здесь довольно необычна: важнее не внутреннее устройство сущности, а связи с другими сущностями. Для категорийного мышления объект определяется не материалом и не внешним видом, а набором допустимых действий, переходов и отношений внутри системы.

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

Категория в таком языке состоит из объектов и морфизмов. Морфизмы – допустимые связи или переходы между объектами. Если представить шахматы как категорию, на схеме появятся клетки или позиции в виде точек, а стрелки покажут разрешенные ходы. Дальше исследователь может сравнивать разные категории, соединять их, накладывать друг на друга и изучать, как одна логическая система сочетается с другой. Для чистой математики такой аппарат давно стал привычным делом. В прикладных задачах смысл шире: категории позволяют собрать единый язык для очень разных частей сложной системы.

Бытовой опыт показывает похожую логику даже без специальных терминов. Никто не путает пять футов и пять долларов, хотя число в записи одно и то же. Длины можно перемножать: 3 фута на 5 футов дают 15 квадратных футов. Денежные суммы так умножать нельзя, потому что квадратных долларов в обычной экономике нет. Зато доллары можно складывать, а ещё сумму можно умножить на обычное число, например на 3. Для теории категорий разница кроется не в цифре, а в типе объекта и в списке допустимых операций.

Категорийный подход описывает денежные величины как объекты категории, связанной с одномерным векторным пространством. Если вообразить числовую прямую, сумма денег похожа на вектор, который начинается в нуле и уходит вправо на определенную длину. Два таких вектора можно сложить, но операция умножения между ними не входит в набор допустимых преобразований внутри данной структуры. Человек на кассе, конечно, не обязан знать про векторы и морфизмы, чтобы не совершать абсурдных вычислений. В сложных моделях, где рядом стоят люди, дозы лекарства, бюджет, риск заражения и интервалы времени, путаница возникает намного легче.

Джон Баез видит здесь одну из главных причин ошибок в прикладных моделях. Обычный программный код может принять число 35 без пояснений. Для машины 35 долларов, 35 человек, 35 доз препарата и 35 градусов выглядят одинаково, если разработчик заранее не задал строгие различия. Такая неразборчивость облегчает ошибки: в одной системе смешиваются сущности, для которых действуют разные правила. Прикладная теория категорий пытается убрать подобную неясность ещё на уровне конструкции модели.

В таком подходе реальная система описывается через объекты и морфизмы, а затем получает строгую логическую форму. Один из создателей Topos Institute в Беркли Брендан Фонг говорит о категориях как о способе упорядочить логические структуры. Смысл не сводится к красивой абстракции ради абстракции. Речь идет о рабочем языке, который помогает собрать вместе разнородные части большой системы без потери смысла на стыках.

Первые шаги в таком направлении уже были. В 2000-х физик Боб Кекке применил категорийный аппарат к квантовой механике, а позднее работа получила продолжение в задачах квантовых вычислений. Примерно тогда же Баез начал думать о биосфере. Независимо от него математик Дэвид Спивак, будущий сооснователь Topos Institute, развивал прикладную теорию категорий на материале баз данных. Спивака привлекала вполне земная задача: сделать сложные системы читаемыми и убрать неоднозначность при передаче информации между людьми, таблицами и программами.

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

Именно поэтому Баез когда-то увидел в теории категорий шанс для климатологии. Климатическая наука пытается описать, пожалуй, самую большую систему из доступных исследователю – Землю. В работу нужно связать атмосферу, океаны, лед, облака, почвы, биологические процессы, потоки энергии, огромные массивы наблюдений и вычислительные прогнозы. У каждой подсистемы свой набор методов, параметров и данных. Собрать такую конструкцию в единую логичную схему чрезвычайно трудно. Категорийный аппарат, по замыслу Баеза, мог бы навести в такой сборке больше строгости и облегчить подключение новых данных.

До климатической науки прикладная теория категорий, однако, почти не добралась. Сами исследователи признают: реального влияния на климатические модели у направления пока нет. Причина не в слабости климатологии, а скорее в зрелости существующих систем. Рабочие модели уже достаточно сложны и полезны, чтобы научное сообщество не спешило перестраивать архитектуру с нуля ради большей математической аккуратности. Сторонники категорийного подхода уверены, что строгая сборка сделала бы модели прочнее, гибче и удобнее для интеграции новых знаний. Проблема в цене перехода. Такой шаг требует времени, денег и доверия, а отдача приходит не сразу.

Ситуация в эпидемиологии выглядит заметно живее. Баез сотрудничает с Topos Institute и канадским специалистом по компьютерным наукам Нейтом Осгудом, который занимается моделированием вспышек заболеваний в Университете Саскачевана и участвовал в работе над ответом Канады на пандемию. Осгуд столкнулся с практической трудностью: существующее программное обеспечение плохо соединяло знания из разных областей. Для прогноза эпидемии нужны медицина, демография, социальная статистика, логистика, поведенческие науки и данные системы здравоохранения. Обычные инструменты не давали удобного способа собрать всё это в одну согласованную картину.

В эпидемиологии давно используют схемы stock-and-flow. По-русски речь идет о диаграммах запасов и потоков. В одной группе находятся восприимчивые к инфекции, в другой заражённые, в третьей выздоровевшие, в четвёртой умершие. Стрелки между блоками показывают переходы, которые зависят от заразности возбудителя, частоты контактов, уровня защиты или неравенства в доступе к медицине. Для теории категорий такая диаграмма выглядит почти родной: состояния играют роль объектов, а переходы между состояниями становятся морфизмами. По расположению блоков и стрелок затем записываются уравнения, описывающие, как вся система меняется во времени.

За последние годы команда Баеза, Осгуда и коллег выпустила программный пакет StockFlow, который как раз формализует такую логику. Подход позволяет разным специалистам отдельно описывать свои участки модели, а затем собирать более крупную конструкцию. Один исследователь может разобрать влияние социального неравенства на риск заражения у уязвимых групп. Другой добавит роль вакцинации. Третий опишет госпитализации или изменения в поведении населения. Категорийный аппарат помогает соединить такие части в общую схему без потери смысла на границах между дисциплинами.

Широкого распространения среди эпидемиологов StockFlow тоже пока не получил. Внутри математического сообщества работу, однако, считают вполне серьезной, а не чисто философской. Осгуд уже учит студентов пользоваться таким подходом и рассчитывает, что следующему поколению моделистов строгая формализация покажется не экзотикой, а обычным рабочим инструментом.

Ещё одно поле для применения связано с безопасностью искусственного интеллекта. Исследователи Амар Хаджихасанович и Маттео Капуччи участвуют в проекте Safeguarded AI, который финансирует британское агентство ARIA. Проект отвечает на очень жесткий вопрос: как доверить системам ИИ управление критически важной инфраструктурой, если сами алгоритмы порой ведут себя непредсказуемо и допускают ошибки? Речь идет о средах, где сбой слишком дорог: атомные станции, электросети и другие сложные объекты реального мира.

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

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

Главная претензия Баеза к нынешнему способу описывать живые системы касается самой рамки мышления. Биологию слишком часто пытаются уложить в инженерную схему: на вход подаются вещество и энергия, на выходе получается полезный результат и побочные отходы. Такой взгляд удобен для машин, но плохо подходит для жизни. Инженерная оптика заставляет сосредоточиться на нужной человеку части процесса и отбросить всё остальное – происхождение энергии, судьбу отходов, побочные связи и обмены, без которых экосистема вообще не существует.

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