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