Диалоги (июнь 2003 г.) - Гордон Александр. Страница 45
Но сейчас, наверное, стоит перейти к ещё одному сюжету, связанному с применением математики, математических подходов в систематике растений. История с ним достаточно поучительна. В 1960-е годы немецкий энтомолог Вилли Хенниг разработал некоторый алгоритм для определения родственных отношений между группами организмов. Покажите, пожалуйста, следующую иллюстрацию.
Систематик работает с матрицей данных. Я здесь просто привёл пример такой матрицы данных. У нас есть четыре самых разных организма: лягушка, черепаха, ворона, кошка. И некоторый набор признаков. Здесь для примера пять признаков. У нас есть некоторое представление об эволюции этих признаков, исходящее из каких-то общебиологических представлений. И мы можем чисто формально построить так называемую «кладограмму», то есть дерево, иллюстрирующее родственные связи между данными организмами. Здесь получается, что положение вороны при данном наборе признаков оказывается несколько противоречивым, в то время как положение черепахи или кошки более-менее понятно. К кому ближе ворона – к кошке или к черепахе? Я подчёркиваю, это пример достаточно умозрительный. Реально всё сложнее. Но здесь возможны два варианта. С кошкой ворону сближает теплокровность, с черепахой её сближает сухая кожа, кожа, лишённая желез. И как раз существуют вычислительные алгоритмы для подобных операций, для построения подобных деревьев, и когда таких признаков и таких групп организмов сотни, то и таких неясных ситуаций тоже накапливается много. И поэтому долгое время систематики относились с большим скепсисом к таким кладистическим подходам. До 90-х годов, когда были усовершенствованы методы молекулярной биологии, и секвенирование, то есть определение последовательности ДНК, стало, в общем, рутинной лабораторной процедурой. Если не в России, по бедности, то на Западе. Сейчас это вопрос денег и небольшого количества рабочего времени. И как оказалось, сейчас…
Д.С. Но всё-таки в России тоже возможно…
А.О. Сейчас у нас, слава Богу, это тоже вполне возможно. В Москве существует лидирующая группа по молекулярной систематике под руководством Андрея Сергеевича Антонова при Московском университете…
Д.С. Да, я как представитель Московского университета не могу молчать…
А.О. Мы в нашем Ботаническом институте очень гордимся, что этой зимой мы провели первый секвенс, наконец-то освоили. То есть одно дело Москва, другое дело – остальная Россия. Это тоже не надо забывать.
Д.С. Ну, не надо… У вас всё-таки лидирующий ботанический институт в России…
А.О. Сейчас вопрос о чисто техническом оснащении. Так или иначе, обнаружились объекты, которых можно брать много, строить матрицы данных с очень большим числом равновесомых признаков. Тот нуклеотид или иной нуклеотид в данной позиции – вот вам и признак. Этих нуклеотидов тысячи. И если для морфологических признаков, которые видны простым глазом, этот подход действительно не очень работал, во-первых, потому что признаков не так много, а во-вторых, а может быть, даже во-первых, потому что эти признаки заведомо неравнозначны, и вообще любой объект мы можем расчленить на неопределённое число признаков, то последовательности ДНК дают нам совершенно объективное расчленение на чёткие и равновесомые признаки. И вот сейчас молекулярная систематика стала достаточно мощной областью, она уже прочно вошла, собственно, в ботанику. Хотя это и порождает определённые проблемы. Тут, наверное, вы расскажете лучше…
Д.С. Вы знаете, тут просто целый комплекс очень интересных математических задач. Во-первых, эти все алгоритмы требуют совершенно бешеного машинного времени. И в особенности оно нужно для того, чтобы сделать результаты по-настоящему убедительными. Даже несмотря на то, что сейчас персональные компьютеры очень быстро работают, эта задача явно не для персональных компьютеров. Очень здорово, что мы не только в молекулярной биологии проходим этапы технического совершенствования, но и в вычислительной математике. И буквально за последние года два, наверное, может, три стало реальным систематически пользоваться компьютерными кластерами. А эти задачи буквально идеально приспособленные для компьютерных кластеров. Тут нужно опробовать много вариантов кладограммы, дерева, которое мы смотрели. И можно очень здорово распараллелить эти задачи, поручить разным процессорам компьютерным изучать разные варианты. Вообще говоря, когда вы собираете кластеры из большого числа компьютерных процессоров, очень-очень не просто сделать так, чтобы они все были эффективно загружены. У нас сейчас в университете в вычислительном центре появился такой достаточно мощный кластер, а есть и в Академии наук, и в других местах. Это очень серьёзная область математики, как сделать хорошую загрузку разных процессоров.
Есть другая проблема. Классическая вычислительная математика сначала была проговорена и продумана ещё в докомпьютерную эпоху, когда сначала долго объясняли, как этот алгоритм работает и почему его так надо организовывать, а не как-нибудь по-другому. Я верю, что те, кто писал кладистические программы, хорошо понимают, почему они должны работать именно так. Но это знание, оно в очень многом не очевидно. И вот для компьютерной реализации это очень необычная ситуация, когда вроде бы есть работающая программа, а как она точно работает и почему – пользователи затрудняются объяснить. Ну, с этим тоже, по-видимому, удастся сладить. Но в целом это очень привлекательная задача – сделать так, чтобы эти программы пошли на кластерах параллельных компьютеров и чтобы действительно мы понимали не просто рецептурно, как она работает, а концептуально.
А.О. К сожалению, очень немногие систематики, пользователи подобных программ, вообще задаются вопросом: а что там внутри этой программы? То есть признаки грузят, на выходе получают кладограмму. Она им нравится или не нравится, и какие-то меняют условия, играют. А смысл того, что внутри, к сожалению, остаётся, как правило, за кадром. Тут возникает масса недоразумений. Лично я смотрю на эти программы и на эти деревья как на своего рода карты, карты разнообразия живого. Это отнюдь не генеалогические деревья, не дерево, которое изображает историю, буквальный исторический сценарий, как развивались данные таксоны, а именно как карта. И, точно так же, как в географии, существуют разные способы спроецировать земную поверхность, которая отнюдь не ровная, на плоскость карты. Существуют разные проекции. Существуют разные системы координат. Аналогично и здесь. Просто разные программы, насколько я понимаю, отличаются способом проецирования эмпирического разнообразия живых организмов на некоторую идеальную плоскость или на некоторое идеальное пространство. Но тут, наверное, можно перейти к распознаванию…
Д.С. Распознавание образов вообще очень тяжёлая область математики, где с большой кровью и с большим трудом даётся прогресс. Есть такие очевидные вещи, которые человек легко решает. Я субъективно уверен, скажем, что вы не марсианин, а объяснить это компьютеру – очень непростая задача. И её, в общем, нужно решать совместно и математикам и биологам. С моей точки зрения, для того чтобы подобные программы начали хорошо работать, должны появиться люди, которые в одной своей ипостаси, скажем, ботаники, а в другой – специалисты, скажем, по вычислительной математике.
Это трудно, но исторически примерно так развивалась, скажем, математическая физика. Были у её истоков такие люди, например, как Андрей Николаевич Колмогоров. Математик, но писал и чисто физические работы. Скажем по теории турбулентности, за которые любому, самому заядлому физику памятник нужно ставить. Нужно, чтобы такие же люди появились у того места, где внедряются компьютерные программы.
А.О. Тогда, может быть, надо говорить немножко иначе. Да, действительно, я уже сказал, что вид – это то, что считает видом компетентный систематик. То есть, виды обычно распознаются «в лицо». И для того чтобы научить распознавать других людей, несистематиков, указываются идентификационные признаки, определительные признаки. Но часто эта задача достаточно сложна. Здесь и нужно помочь несистематикам распознавать виды. Вот это – запрос от ботаников к математикам, который, как я понимаю, пока не вполне удовлетворён.