Паззлы для самых маленьких:
Роботы начали собирать себя сами

Автор: Константин Курбатов

Опубликовано в журнале "Компьютерра" №1-2 от 18 января 2007 года

Еще недавно обыватели рассуждали о Марсе исключительно в астрологическом контексте. Некоторые вспоминали про вездесущих "зеленых человечков". Ну а люди чуть более образованные даже задавали вопрос: "Есть ли жизнь на Марсе?"

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

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

Аналогичные трудности испытывают и разработчики автономных роботов на Земле. Такие машины необходимы для случаев, когда работа опасна для жизни человека или нахождение людей в том месте невозможно в принципе (например, в нефтяной трубе или под завалами разрушенных домов).

Уже много лет ученые всего мира бьются над решением этих проблем. В России это делалось (и, наверное, потихоньку делается) на базе отраслевых НИИ, в США - в лабораториях ведущих университетов. И в одном из них, похоже, ученым удалось немного продвинуться вперед.

Кубики для всех

В трех с половиной часах езды от безумного Нью-Йорка, в городе Итака, что находится на южной оконечности озера Каюга, расположен знаменитый Корнельский университет. Он известен не только активным участием в марсианской программе (там были разработаны оптические системы для марсоходов Spirit и Opportunity), из-за его стен то и дело просачиваются новости о различных инновациях в области IT. Примечательно, что в лабораториях университета работают и россияне, среди которых 27-летний аспирант Виктор Зыков. Родившись в Иванове, знаменитом "городе невест", он закончил Ивановский государственный энергетический университет. Защитив в 2002 году диплом под руководством Александра Николаевича Голубева и Виктора Федоровича Глазунова на кафедре электропривода, Виктор получил степень магистра по электромеханике. После института молодой человек успел помыкаться по нескольким местам работы, прежде чем обнаружил, что несмотря на потребность в электрических машинах, аналогичной потребности в специалистах по ним не наблюдается.

Тоску молодого специалиста развеяла одна из научно-популярных передач канала "Дискавери", где Ход Липсон, кандидат наук израильского происхождения из частного массачусетского Университета Брэндайс, рассказывал о своей необычной CAD-программе, которая позволяла по нарисованному от руки наброску в виде проволочной модели восстанавливать законченную сложную трехмерную фигуру [С этим проектом можно ознакомиться по адресу ccsl.mae.cornell. edu/research/sketch, оттуда же можно скачать и демонстрационную программу, которая на моем компьютере, к сожалению, не заработала]. Сообщалось также и о разработанных американцем технологиях автоматической сборки роботов из унифицированных элементов, а напоследок Липсон поделился результатами в области эволюционных алгоритмов.

Виктор, вдохновившись идеями американского ученого, написал ему письмо, в котором, в свою очередь, изложил свои мысли о робототехнике, и спросил, каким образом он мог бы принять участие в его научной деятельности. Липсон откликнулся на письмо скромного ивановского электромеханика, посоветовав ему прислать свою заявку на место в аспирантуре Корнельского университета, где Ход к тому времени начал преподавать. Заявка Зыкова была одобрена, и в марте 2003 года Виктор получил приглашение на учебу в университете. Там он влился в коллектив лаборатории вычисляемого синтеза, где вместе с Ходом Липсоном и Джошем Бонгардом занялся исследованиями в области эволюционной робототехники. И одним из последних результатов работы явилось создание робота, обладающего, как поспешили отрапортовать многие новостные агентства, "внутренним самосознанием".

С сознанием дела

Как обычно бывает, в действительности ситуация с "самосознанием" осталась столь же туманной, что и раньше. А суть идеи корнельских ученных лежит в несколько иной плоскости [Страничка проекта - ccsl.mae.cornell.edu/research/selfmodels].

Главной целью американских энтузиастов робототехники является многоцелевой алгоритм управления, подходящий для произвольного робота. И тут на помощь приходит универсальная самообучающаяся система управления. Ее копии можно было бы свободно интегрировать в "опорно-двигательные" центры самых разных роботов.

В описываемом проекте стояла задача научить робота получать представление о структуре своего тела на основе физических экспериментов над самим собой. Именно этим вместе с Джошем Бонгардом (бывшим студентом Липсона) и занялся русский аспирант. В итоге совместных исследований был получен коэволюционный алгоритм "самопознания", результатом работы которого является воображаемая модель тела робота, построенная из ограниченного набора виртуальных базовых элементов (в проведенном эксперименте для этого использовались лишь цилиндры и кубы произвольных размеров). Итак, робот изначально не имеет ни малейшего представления о собственной конфигурации. В его распоряжении имеются лишь данные с двухкоординатных датчиков наклона относительно горизонтальной плоскости.

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

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

Оставаясь в относительной безопасности, робот на выходе алгоритма получает свою виртуальную модель, что позволит ему в дальнейшем предсказывать результат своих усилий. Кроме того, обладание такой моделью позволяет предварительно оценивать полезность действий, выбирая самое выгодное из них - в соответствии с полученным от человека заданием. Можно говорить, что робот становится "сознательным" в смысле экономии ресурсов и избежания опасных шагов.

От слов к телу

Для эксперимента был построен робот в виде "морской звезды" о четырех щупальцах (размах 0,6 метра). На его борту разместился одноплатный микрокомпьютер PC-104 производства Advanced Digital Logic (на основе Celeron 266 МГц), обладавший нужным количеством сигнальных входов и оснащенный модулем беспроводной связи. Однако ученые возложили на этот контроллер лишь функцию непосредственного управления роботом, а вся вычислительная нагрузка для ускорения эксперимента была перенесена на принадлежащий университету многопроцессорный кластер. Несмотря на его высокую производительность, расчеты заняли около тридцати часов. При этом каждый из узлов кластера работал над всей задачей, и таким образом одновременно было получено несколько десятков независимых результатов. Это было необходимо для проведения статистического анализа и сравнения полученных вариантов. В беседе Виктор сообщил, что существует огромное множество вариантов воплощения эволюционных алгоритмов, и выбор какого-то конкретного тогда не имел слишком большого значения.

Основная цель исследования была в демонстрации работоспособности самой концепции самопознания, что и было с блеском осуществлено: робот смог не только самостоятельно оценить обстановку, построив собственную виртуальную модель, но и продолжал передвигаться после удаления любого из щупалец!

Только без рук

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

А в перспективе можно предположить, что первые разумные послания, которые мы получим с далеких планет, будут отправляться нашими же, не лишенными чувства юмора роботами.

Идет бычок, качается

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

Тут проявляются основные преимущества универсального алгоритма. Его достоинство не только в возможности избежать нудного программирования контроллера для каждого нового устройства, но и в способности относительно легко подстраиваться к поломкам, не теряя при этом мобильности (конечно, если они совместимы с жизнью). То есть в случае неисправности робот может перестроить свою внутреннюю модель под изменившуюся ситуацию и продолжить движение.

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

http://offline.computerra.ru/offline/2007/669/302780/