Морфологическая эволюция физических роботов посредством безмодельного развития фенотипа

Люциус Бродбек (Luzius Brodbeck), Саймон Хаузер (Simon Hauser), Фумия Иида (Fumiya Iida)

Краткий обзор

Искусственная эволюция физических систем — это вероятностный метод оптимизации, с помощью которого физические машины путем повтора действий (итерации) приспосабливаются к целевой функции. Для основной оптимизации конструкции здесь важна возможность изменять форму физических машин путем, сходным с эволюционным процессом. Оптимизация здесь не полагается на сложные физические модели — их использование приводит к «отрыву от реальности», то есть к несоответствию между модулируемым и реальным поведением. Мы говорим о безмодельной разработке и оценке фенотипа путем искусственной эволюции физической системы, когда робот-мать самостоятельно конструирует и осуществляет сборку движущихся агентов. Затем эти движущиеся агенты автоматически помещаются в тестовую среду, где логика всех их действий оценивается, и после данные оценки используются при планировании следующего «витка» искусственной эволюции. В рамках эксперимента были изучены в общей сложности 500 автономно созданных движущихся агентов. В данной статье будет показано множество вариантов строения и действий физических роботов, повышающих их функциональность в условиях ограниченных ресурсов.
 

Введение

Адаптация — основной механизм, который позволяет живым организмам выживать в изменяющихся условиях окружающей среды.
Благодаря эволюционной адаптации некоторые животные приспособились к жизни на суше вместо того, чтобы жить под водой, а фенотипическая пластичность растений в процессе онтогенеза позволила им адаптироваться к меняющимся условиям окружающей среды и за счет этого выжить [1]. Сегодняшние машины, в отличие животных и растений, строго ограничены своими базовыми структурными параметрами, и возникает вопрос, могут ли машины достигнуть подобного уровня адаптивности, приспосабливая свое строение [2, 3, 4].
Ранее ученые уже обращались к идее искусственного воссоздания процесса природной эволюционной адаптации. [5, 6, 7]. Оптимизация тела и интеллекта была продемонстрирована на примере искусственной эволюции виртуальных «животных» [8, 9, 10, 11]: доработки механических «тел» и схем регуляции базовых движений (ходьба, бег, плавание) проводились по образцу эволюционной адаптации живых организмов.
Таким образом, опыт искусственной эволюции был привнесен в реальные системы. В ряде случаев такой «эволюционный путь» применялся для решения технических проблем — например, он позволил подобрать оптимальную форму спутниковой антенны [12]. Было показано, что в реальном времени можно оптимизировать электронные схемы под определенные задачи, и эту оптимизацию технических средств можно вести путем, имитирующим эволюционный [13, 14]. Результаты этих работ показывают, что эволюция может создавать неожиданные решения. Однако не все электронно-механические системы могут адаптировать свое физическое строение прямо в процессе работы [15, 16,17, 18]. Доработка систем, не имеющих такой адаптивности, проводится в лабораторных условиях, и лишь потом успешные доработки внедряются на практике. [19, 20]. Лабораторные модели-симуляторы позволяют протестировать тысячи и даже миллионы решений за короткий срок, но они полагаются на точность реализуемых физических моделей, которые на практике часто уступают во многих вариантах взаимодействия. Недостаточная точность моделей приводит к тому, что на практике решение оказывается не таким эффективным, как казалось в тестовой среде. Это называется «отрывом от реальности» [21, 22]. Другая серьёзная проблема — факт, что работы, посвященные искусственной эволюции, редко рассматривают реальные физические системы [23], и до сих пор неясно, как именно искусственная эволюция поможет в конструировании воссоздаваемых физических машин [24]. В своей работе над развитыми структурами Lego (которые универсальны и удобны в применении при демонстрации процессов изменения компьютерно-моделируемых структур) Пабло Фанс (Pablo Funes) и Джордан Поллэк (Jordan Pollack) ограничивают искусственное воспроизведение таким образом, что развиваются только те структуры, которые могут быть объединены. [25]. Тим Кюн (Kuehn) и Джон Риффель (John Rieffel), с другой стороны, обеспечивают «реалистичность» неактивных конструкций, над эволюцией которых они работают, с самого начала создавая исполнимые инструкции по их изготовлению [26].
В данной работе рассматривается безмодельное внедрение искусственной эволюции физических систем для вероятностной оптимизации конструкций реальных машин. Создание машин и анализ их производительности проводится без помощи симуляторов и человеческого вмешательства для постепенного улучшения их функциональных возможностей. Безмодельный подход позволяет избежать «отрыва от реальности» и работы с «нежизнеспособными» в реальных условиях вариантами. Но остаются как минимум две проблемы. Во-первых, в реальности ресурсы ограничены, особенно время, поэтому улучшения функциональности необходимо добиться за небольшое число эволюционных «поколений». И, во-вторых, нельзя игнорировать физические ограничения автоматической разработки вариантов, потому что обычные автоматизированные технические средства, как правило, разрабатываются для массового производства, а не для массовой персонализации. Таким образом, для автономной разработки большого структурного разнообразия необходимо решить ряд проблем.
 

Материалы и методы

Обзор процесса

Основная обеспечивающая технология для безмодельной искусственной эволюции — это внедрение автоматизированного строительного процесса для вероятностной оптимизации механических конструкций на практике [26]. В этих аспектах рассматривается робот-мать, т.е. робот-манипулятор, который собирает варианты агентов из данных ресурсов (рис. 1A). Каждый агент собирается из множества пассивных и активных кубических модулей, с которыми легко может управляться робот-мать. Этот робот производит серии манипуляций, таких как взятие и размещение детали или поворот кубического модуля с грани на грань, после чего компонует детали и соединяет их термоклеем.
 
alt
Рис. 1. Процесс создания агента
Робот-мать (A) используется для автоматической сборки подходящих агентов из активных (движущихся) и пассивных модулей. Для процесса строительства автоматизированный манипулятор оборудован зажимом и устройством подачи клея. Информация о конструкции каждого агента содержится в его геноме (B). Один модуль — один ген: в гене приводится информация о типе модуля, его расположении и информация о движении агента. Строительная последовательность, закодированная одним геном, показана на рис. 1C. Во-первых, манипулятор поворачивает имеющуюся деталь в нужное положение в соответствии с информацией «генов» (изображения C1 и C2). Во-вторых, выбирается новый модуль (в данном случае активный), который поворачивается в нужное положение (C3) и в конце концов прикрепляется сверху агента (C4).
 
Эволюционная оптимизация этой модели порождается кодированием построения физических конструкций в геноме каждого агента. Как показано на рис. 1B, наша среда разработки рассматривает представленную в геноме агента информацию о типах модулей, строительных параметрах и моторных командах для активных модулей. Ограничивающими факторами конструирования стали: 1) способность робота-манипулятора совершать нужное действие, 2) достаточное разнообразие результатов. Принимая во внимание геном, описанный выше, робот-мать может воспроизводить подходящий агент, добавляя модули один за другим к структуре, что в конечном счете формирует фенотип подходящего агента после завершения операций (рис. 1B и 1C).
После создания каждого агента робот-мать оценивает его по некоторому критерию пригодности, в данном случае — это расстояние, пройденное от начальной позиции, делённое на время тестирования. Для проведения анализа робот-мать переносит подходящего агента на тестовую арену, где подвижные модули агента активируются посредством радиосвязи. Поведение агента регистрируется подвесной камерой и анализируется для оценки пригодности (S2 Movie). Параметры двигательных команд активных модулей являются частью информации генома агента, таким образом, в эволюционном процессе могут одновременно эволюционировать «тело» и «ум» агента. После завершения оценки пригодности агенты вручную разбираются, а с модулей удаляют остатки термоклея. Разработка и оценка повторяются для всего поколения подходящих агентов вслед за постоянной вероятностной оптимизацией, использующей комплекс наибольшей приспособленности, такой как метод одноточечного моделирования процесса скрещивания особей (one-point crossover) и принципы мутации (детально эволюционный процесс см. в разделе «Алгоритм» и файл S1). За счет вероятностной модификации геномов могут возникать новые варианты структуры агентов, и в конечном счете это приведёт к улучшению технических возможностей на основе поколений.
 

Аппаратные средства

Автоматизированный манипулятор (Universal Robots, UR5) показан на рис. 1A. Манипулятор имеет 6 степеней подвижности. Для работы с модулями робот оборудован двумя инструментами: зажимом и дозатором термоклея.
Зажим представляет из себя двупалый пневматический манипулятор параллельного захвата. «Пальцы» созданы по технологии трёхмерной печати (3D-printed) из стирола бутадиена акрилонитрила (СБА). «Пальцы» разработаны таким образом, чтобы захватывать объекты двух разных размеров. Зажим оборудован дозатором термоклея для того, чтобы соединять модули. Термоклей (ALFA Klebstoffe AG, ALFA H 5500/30) температурой 165°C автоматически подается из расплавителя (Robatech AG, Concept B12) по нагреваемому шлангу во впрыскиватель (Robatech AG, SX 1N/296 Diamond).
Активные элементы используются для приведения в действие движущихся агентов в виде кубов с длиной стороны 6 см и общей массой 160 г (рис. S1). Серводвигатель (Modelcraft, RS-3 JR) за один раз может повернуть куб только на одну из поверхностей. Активные элементы включают в себя элемент связи (Sparkfun, Bluetooth Mate Silver) и микроконтроллер (Arduino, Pro Mini) для управления серводвигателем и батареей (Conrad Electronic AG, Conrad energy LiPo Akku 7.4 V, 800 mAh), чтобы восполнять мощность. Корпус серводвигателя — 3D-модель, напечатанная из полимолочной кислоты (ПЛК). Серводвигатели контролируются датчиками колебаний на основе двух параметров контроля: амплитуды и изменения фазы. В покое вращающаяся плоскость выровнена с основной частью модуля. Управляющий сигнал для серводвигателя переключается между вершинами вращающихся плоскостей, следовательно, скорость вращения обуславливается аппаратными средствами и частотой, связанной с амплитудой. Амплитуда может быть установлена пятью дискретными величинами: 0°, 10°, 20°, 30° и 40°, а фазовый сдвиг может быть выбран из восьми дискретных значений: 0°, 45°, 90°, 135°, 180°, 225°, 270° и 315°. Чтобы убедиться, что вращение всегда начинается из состояния покоя (первоначально согласованной конфигурации), в зависимости от фазового сдвига добавляется постоянное смещение угла. В качестве пассивного элемента используются деревянные кубы с длиной стороны 3 см и массой 30 г. Цвет пассивных кубов был изменен на черный для более легкого выявления при анализе изображения.
 
alt
Рис. S1

 

Контроль и коммуникация

Главный контроллер (регулятор) программируется в лаборатории материалов (material laboratory — MATLAB) и запускается на настольном ПК. Геном заполняется в лаборатории материалов, которая создает виртуальную модель агента — только для проверки — и одновременно генерирует команды для манипулятора.
Главный контроллер взаимодействует с контроллером робота-манипулятора через протокол TCP/IP и с активными модулями через Bluetooth. Автоматизированный манипулятор имеет свой собственный регулятор, который также управляет зажимным устройством и поставщиком термоклея захватного устройства. Во время работы главный контроллер выполняет контрольную программу и посылает команды с параметрами управляющему регулятору, который выполняет их последовательно методом прямой связи.
На этапе тестирования главный контроллер посылает активным модулям команды по Bluetooth. Встроенный регулятор интерпретирует командную строку и начинает колебательное движение серводвигателя с передающейся амплитудой и изменением фазового сдвига.
 

Среда сборки и тестирования

Для упрощения процесса среда сборки разделена на три зоны: ячейки для хранения модулей, центрирующую рамку и собственно зону, где осуществляется сборка. Благодаря ячейкам для хранения активные и пассивные модули находятся в заранее определенных и доступных манипулятору местах. Для каждого поворота элемента используется центрирующая рамка для того, чтобы положение детали оставалось ровным. Центрирующая рамка — это картонный каркас с кромкой из фольги на его внутреннем крае, с которой неправильно выровненные элементы сползают к центру рамы. Зона сборки (3-миллиметровый поролон, который покрыт клейкой лентой липкой стороной вверх) мягкая и немного липкая, это нужно для того, чтобы обеспечить надёжный контакт с поверхностью и не допустить смещения элементов.
Тестирование передвижений выполняется на трех различных покрытиях. Первое — твердая плоская поверхность (фанера, покрытая белой тканью). Второе — ковер (толщина 1 см), третье — 1-сантиметровый слой пенополиуретана, нанесённый поверх ковра.
 

Алгоритм

В основе оптимизации — эволюционный алгоритм, который многократно улучшает результат построения движущихся агентов. Упорядоченный набор из одного-пяти генов содержит полную информацию, описывающую субъект и геном. Алгоритм начинает инициализацию геномов первого поколения подходящих агентов. Тогда эволюция выступает в виде мутаций: в одном гене модифицируются компоненты, другие гены целиком удаляются, добавляются или скрещиваются — причём новый геном формируется слиянием генов от двух субъектов. Затем геном интерпретируется и выражается в фенотипе, который характеризует внешний вид финального агента.
Создание кода идет путем компромиссов. Любой геном, сгенерированный в зависимости от выбранного кодирования, должен быть воссоздаваем в реальности, а значит достаточно прост. С другой стороны, он (геном) должен быть достаточно эффективным, чтобы генерировать сложные агенты. Информация о последовательности действий, необходимых для воспроизведения данного генома в агенте, также задается геномом. Для включения прямой передачи закодированной информации в производственный процесс, выстраиваемая последовательность непосредственно закодирована, т.е. каждый геном определяет последовательность действий, которые будут выполнены в процессе строительства [26].
Операция состоит из нескольких элементарных действий, например, раскрытие зажимного устройства или перемещение в другое положение. Ген определяет последовательный ряд операций, выполненных в определенном порядке. Следовательно, один ген содержит информацию об одном этапе создания. Полная последовательность дает план построения целого агента, соответствующего геному.
В каждом гене закодированы три действия процесса:
  1. Поворот конструкции: если это не первый ген, то уже соединенные элементы конструкции будущего агента могут быть повернуты до двух раз, сначала +/‒90° вокруг оси Z, потом +/‒90° вокруг оси Y.
  2. Подготовка модуля: тип модуля отбирается и выбирается из сетки хранения. Активные модули могут поворачиваться до двух раз: снова +/‒90 ° вокруг оси Z и второй раз +/‒90 ° вокруг оси Y.
  3. Присоединение модуля: новый модуль присоединяется к самой верхней поверхности уже построенного устройства, используя для этого термоклей. Если это первый ген, модуль помещается в центр зоны сборки.
Вместе с этими тремя процессами успешно выполняется развиваемое кодирование. Зафиксированная последовательность процессов гарантирует, что конечная точка действий от одного гена может служить отправной точкой для следующего цикла. Следовательно, можно адаптировать геном, минуя состояние, которое не может быть обработано системой. В таблице 1 приведен полный пример генома, состоящего из трех генов. Процессы разработки, параметризованные третьим геном, проиллюстрированы на рис. 2. Полностью процесс создания показан в файле видео S1, список значений параметров в файле S1.
 
Таблица 1. Пример полного генома
Область Ген 1 Ген 2 Ген 3
Структура [0º, 0º] [-90º, 0º] [-90º, 90º]
Тип 2 (активный) 1 (пассивный) 2 (активный)
Ориентация [90º, 0º] [0º, 0º] [0º, -90º]
Относительная позиция
[0, 0] [0, 0.8] [0.6, 0.8]
Область действия
0.5 0.8 0.2
Фазовый сдвиг
4 0 3
Амплитуда
5 0 5
Финальное положениеa  1    
Процесс разработки, связанный с третьим геном проиллюстрирован на рис. 2, а дополнительная информация о параметрах представлена в файле S1.
a)Одиночный параметр определяется для всего генома.
 
 
 
alt
Рис. 2. Процесс построения
Этот пример иллюстрирует реализацию третьего (и последнего) гена в геноме, показанного в таблице 1. (a) Исходная конфигурация показывает состояние после конструирования первых двух генов, т.е. пассивный элемент зафиксирован на активном модуле (на рисунке помечен словом «structure») и подготовлен второй активный элемент. (b-c) Поворот устройства на ‒90° вокруг оси Z и на 90° вокруг оси Y. (d) Поворот нового элемента на ‒90° вокруг оси Y. (e-f) Термоклей нанесён на устройство, и модуль присоединён сверху согласно параметрам смещения положения, относительно Δx и Δy. (g) Конечный поворот всех агентов на 90° выполняется вокруг оси Y. (h) Параметры управления двигателем заданы активными элементами, а агент готов к тестированию.
 

Отборная часть, мутация и скрещивание

После того, как  заканчивается оценка пригодности одного поколения, создаются геномы агентов для следующего поколения. Отборная часть наиболее приспособленных особей развивается без изменений для того, чтобы сохранить свои способности. Оставшиеся области следующего поколения заполняются агентами, чьи геномы были изменены в результате мутации или скрещивания. Для каждой области произвольно определяется, с помощью какого из двух методов образуется новый геном, но мутация выбирается чаще. В обоих случаях вероятность для агента, отобранного в качестве «родителя», пропорциональна его пригодности. Для более ясного представления все вероятности и параметры даны в файле S1.
Под мутацией может подразумеваться один из трех вариантов изменения генома: добавление в любом месте генома какого-то нового гена; удаление любого гена; изменение одного параметра любого гена. В зависимости от фенотипа не все типы мутаций подходят для применения к восприимчивым агентам (например, если агент состоит из одного-единственного модуля (подвижного), то тип мутации, при котором модули удаляются, не применим к агенту; см. файл S1, содержащий полный список). Одинаково вероятны все мутации, кроме случаев, когда в ходе экспериментов установлено иначе.
При скрещивании новый геном формируется методом одноточечного моделирования процесса скрещивания особей (one-point crossover) из набора генов двух родительских особей. Для создания потомства первые гены m от первого отобранного родительского генома  объединяются с последними генами n второго родительского генома. Обратная комбинация генов не рассматривается, а неиспользованные гены исключаются, следовательно, в результате скрещивания двух геномов получается только одна гибридная особь следующего поколения. Оба целых числа m и n выбираются независимо в случайном порядке, и они больше или равны одному.
 

Ограничения и проверка

Особенности аппаратной реализации описанного выше процесса создания агентов накладывают следующие четыре ограничения:
  1. Масса: сила зажимного устройства может управлять агентами весом только до 550 г, в противном случае агент выскальзывает из зажимного устройства. Следовательно, зажим не может управлять более чем тремя активными модулями.
  2. Диапазон манипулятора: строительное рабочее пространство ограничено 0.3 м во всех трех направлениях, чтобы избежать неосуществимых конфигураций манипулятора. Поэтому габариты агента ограничены этими размерами.
  3. Стабильность: агент может быть построен только в том случае, если в конце каждого этапа его создания получается стабильная структура.
  4. Добавление самого верхнего элемента: чтобы зажимный манипулятор не толкал и не портил заготовку, новый модуль он может прикреплять только на верхнюю грань заготовки. Это ограничение заложено в рабочий алгоритм, и его выполнение не требует проверки, как с другими ограничениями. В других случаях выполнение ограничений проверяется на шаге подтверждения, и, если ограничение не выполнено, действия манипулятора меняются. В этом случае модуль может быть добавлен к любой верхней поверхности структуры.
Хотя процесс создания агентов предназначен, в первую очередь, для генерации воссоздаваемых структур, выбранное кодирование может производить геномы, которые не могут быть построены в реальном мире, т.к. они нарушают любое из вышеупомянутых ограничений. Эволюция может предложить креативные решения по использованию таких отклонений.. Но учитывая возможности установки это, в то же время, привело бы к большему количеству строительных неудач. Поэтому вводится шаг подтверждения, с помощью которого каждый раз при создании нового генома (в частности, после мутации) проверяется соблюдение ограничений. Вышедшие из строя геномы удаляются, и повторяется шаг генерации (например, мутация). Агенты удаляются, если: они имеют слишком мало элементов (например, нет движущихся) или слишком много (и от этого агент станет слишком тяжелым); если они статически неустойчивы; если вал серводвигателя сталкивается с другим элементом агента при повороте. Вероятность, что случайно образованный геном потерпит неудачу при подтверждении, находится в зависимости от его длины и способа, которым он образован. Например, если действующие геномы мутируют с единственным геном, показатель неудачи составляет 19%. Для геномов с тремя генами показатель увеличивается на 55%. Оба показателя рассчитывались на основе случайных мутаций не менее 1000 геномов в каждом случае.
Стабильность достигается, если центр массы агента лежит в пределах его поддерживающего многоугольника с краем 8 мм до ближайшей границы. Так как условие стабильности должно выполняться не только готовым агентом, но и на всех этапах его создания, оно проверяется после каждой операции строительной последовательности. Как только на каком-то этапе условие стабильности не выполняется, весь агент считается нестабильным.
Проверка на столкновения, то есть будут ли плоскости движущихся модулей сталкиваться с другими модулями агента, проводится статически в финальном фенотипе. Динамическая проверка, с полной имитацией движения агента, не выполняется.
 

Оценка пригодности

Пригодность агента определяется как расстояние, пройденное из начальной позиции агента, делённое на время тестирования. Для автоматического измерения расстояния используется компьютерное зрение. Первоначально время тестирования было установлено на 8 с., затем уменьшено до 4 с. в связи с увеличением скорости агентов в последних двух экспериментах. Две веб-камеры (Logitech Webcam C930e) снимают агент во время передвижения. Одна запись делается с угловой проекцией для того, чтобы показать передвижение, вторая запись агента делается непосредственно сверху. Вид сверху используется для запуска анализа изображения, который определяет центр проектируемой области агента до и после заданного времени тестирования. Для преобразоваиня замеченного по изображениям сдвига в реальное расстояние применяется фиксированное соотношение пикселей на сантиметр. Детальные шаги оценки процесса описаны в файле S1.

 

Анализ разнообразия

Для оценки разнообразия популяцию классифицируют по группам на основании каких-либо критериев. Оценка видового разнообразия часто встречается в экологии [27]. В нашем случае мы опираемся на два критерия: поведение и строение. С их помощью можно выделить две видовые группы.
Для классификации агентов согласно их поведению запись действий каждого агента в среде тестирования вручную проанализирована по четырем пунктам: 1) дискретные взаимодействия с поверхностью, 2) неизменный образец поведения на протяжении теста, 3) основной поворот агента в горизонтальной плоскости и 4) направленное передвижение. Решение о применении каждой функции принимается по отдельности. Каждая уникальная комбинация из этих функций дает отдельный класс агентов по поведению.
Для классификации агентов по их строению необходимо измерить разницу относительно закономерностей строения [28]. Поэтому введены два количественных показателя строения агента. Во-первых, размер агента, обусловленный числом его компонентов и, во-вторых, фактор формы агента c = dtc/dec, т.е. соотношение между диагональю теоретического куба с таким же объемом как у агента (dtc) и диагональю куба, в который реально можно заключить агента (dec). Низкий коэффициент формы достигается при комбинировании элементов по диагонали, а у идеального куба значение фактора формы будет наибольшим из возможных: с = 1. Данный метод определения количества закономерностей строения позволяет классифицировать фенотипы согласно аналогичной сложности строения.
Эффективное количество типов рассчитывается на основе индекса Шеннона для количественной оценки разнообразия популяции, для этого используются различные типы вышеупомянутых классификаций [27]. Индекс Шеннона рассчитывается так:
alt
 
где пи — соотношение агентов, которые являются частью категории i, и S — общее количество категорий [27]. Разнообразие измеряется как эффективное число типов и следует как:
alt

 

Эксперименты

В общей сложности проведены пять экспериментов, которые были направлены на развитие моторных и двигательных способностей агентов. В эксперименте рассматриваются десять поколений десяти агентов, т.е. в реальных условиях оцениваются 100 агентов для каждого эксперимента. Условия всех пяти экспериментов приведены ниже. Первая часть: эксперименты 1a-1d проводятся с учетом действующих строительных ограничений, в то время как некоторые ограничения были снижены в эксперименте 2 для того, чтобы оценить потенциальную сложность достижения этого подхода. Кроме того, рабочая среда была также хорошо адаптирована к различным экспериментам, как и управление двигателем. Подробное описание каждого эксперимента перечисляется ниже.
Эксперимент 1a.
В составе первого поколения было от 1 до 3 элементов и их количество определялось произвольно. Параметры структуры и ориентации (см. файл S1) имеют величину 1*4, что позволяет сделать, в общей сложности, четыре поворота для каждого элемента: по два поворота вокруг оси x и по два поворота вокруг оси y. Завершение вращения, с другой стороны, было отключено. Кроме того, для мутации были активны только ограничения величины. Это может привести к агентам без какого-либо срабатывания. Оценка агентов производилась на жёсткой поверхности. Различные источники помех мешают эволюционному процессу. Для частичной компенсации помех в этом эксперименте каждый агент оценивали пять раз и среднюю производительности приняли в качестве пригодности.
Эксперимент 1b.
Вместо того, чтобы перезаписывать агента множество раз, для этого эксперимента каждый агент был перестроен 3 раза вместе с модулями сервопривода, которые также перемещали при перестройке агента. Каждая версия была записана только один раз. Из полученных при записи трех наборов значений брался средний. Результаты этого эксперимента тестировались на ковровом покрытии, чтобы исследовать адаптивность эволюционного процесса. Набор возможных амплитуд для этого и всех последующих экспериментов был уменьшен до 10°, 20° и 40°.
Эксперимент 1c.
Чтобы оценить чисто морфологическую адаптацию, контрольные параметры двигателя — амплитуда и фазовый сдвиг — были зафиксированы, а мутации, которые на них действуют, отключены. Фазовый сдвиг был зафиксирован на 90°, а амплитуда на 40°. Все агенты были только построены, а проверены один раз на ковровом покрытии.
Эксперимент 1d.
В этом эксперименте контрольные параметры двигателя были восстановлены (с набором ограниченных параметров из эксперимента 1b), и тестирование проводилось на ещё более мягкой поверхности.
Эксперимент 2.
Для этого эксперимента было изменено больше параметров, чтобы определить потенциальную сложность, которая может быть достигнута. Исходное поколение подбиралось не случайно, а на основе геномов, которые показали хорошие результаты в предыдущих экспериментах.
Снова фиксировались контрольные параметры двигателя, а параметры стабилизации и обнаружения столкновений были отключены. Для стимуляции крупных морфологических изменений были скорректированы возможности мутации. Добавление/удаление элементов в одном из вариантов мутаций имеет комбинированную возможность 2/3,  в то время как все другие возможные мутации разделяют оставшиеся 1/3. Для дальнейшего увеличения общего количества мутаций число отборной части приравнивается к 1, так что 9 агентов каждого поколения подвергаются эволюции.
Для сохранения воссоздаваемости без постоянных проверок стабильности и возможности столкновения агента со своими же частями , процессу построения пришлось помочь вручную по двум пунктам: во-первых, агенты могут быть нестабильными во время процесса построения, поэтому оператор-человек, помогающий процессу построения, препятствует падению нестабильных агентов. Сам процесс построения при этом остался без изменений. Во-вторых, чтобы  уберечь подвижные модули от повреждений без проверки столкновений, перед этапом оценки все агенты  осматриваются вручную, а сервоприводы с вероятностью столкновения из экспериментов  исключаются. Агенты  проверяются один раз на мягком покрытии.
 

Результаты

Повышение производительности передвижения

Эволюционный процесс применили к популяции из десяти агентов в пределах десяти поколений, т.е. во время экспериментального запуска были построены и оценены 100 подходящих агентов. Обычно эксперимент начинается с набора произвольно созданных агентов. Разнообразие конструкций формируется во время эволюции, а через несколько поколений может наблюдаться увеличение производительности (в таблице S1 представлена информация о геноме). Увеличение пригодности было количественно проанализировано с помощью пяти экспериментов, в ходе которых  было создано, а затем протестировано в трех разных средах 500 подходящих агентов с различными параметрами (см. рис. 3 и S2). Во всех экспериментах, за исключением первых двух, агент создавался и тестировался один раз. Приблизительно в 96% всех попыток создание агента осуществлялось успешно, и его производительность можно было испытать. Если попытка создать агента заканчивалась неудачей, агенту присваивалась нулевая пригодность и из следующего поколения он исключался. В картах поколения отрицательный код ошибки указывает на неудачный метод (-5: неустановленный, -13: неудачное склеивание, -14: столкновение элементов агента во время сборки, -16: другое). Упорядоченная пригодность верхнего квартиля в каждом поколении показана на рис. 4А, а увеличение пригодности больше, чем на 40% за 10 поколений наблюдалось во всех экспериментах, как показывают результаты в таблице 2. Результаты, представленные на рис. 4A, показывают относительно большие варианты пригодности на протяжении поколений для наиболее приспособленных индивидов, хотя здесь и используется отборная часть. Это результат практического тестирования, включая неопределенность и исключая совершенную повторяемость. Тем не менее, общие тенденции указывают на явное увеличение способностей к передвижению во время процесса оптимизации.
 
alt
Рис. 3. Эволюция передвижения
В каждом из пяти экспериментов были построены и проверены десять поколений из десяти роботов. Для каждого робота из эксперимента 2, сфотографированного сверху, показано начало процесса оценки. Число в верхнем левом углу каждого изображения указывает на его пригодность (см/с). Линии между поколениями показывают связи между роботами, т.е. метод для создания нового генотипа (толстая чёрная линия: отборная часть; тонкая чёрная линия: переход; тонкая серая линия: мутация). Отрицательные пригодности и недостающие изображения указывают на безрезультатный процесс построения соответствующего робота. Изображения показывают, что тестируются различные типы роботов, а пригодность роботов увеличивается в ходе эксперимента.
 
alt
Рис. 4. Оценка пригодности и различие передвижения.
Во всех экспериментах пригодность увеличивается относительно начального поколения (A). Линии показывают верхний квартиль упорядочивающейся пригодности в каждом поколении, с указанием планки погрешности лучшей и средней пригодности. Увеличивающаяся пригодность означает, что эволюционный процесс применяется к исходной популяции роботов, улучшая их возможности передвижения. Вид сверху на траектории четырех успешных роботов из экспериментов 1a, 1c и 2 показывает, что применяются различные стратегии передвижения (B). В то время как самый удачный результат решений в устойчивом предельном цикле имеет также более неустойчивую (обозначено синим цветом) манеру передвижения, результат может достигать хорошей производительности.
 
Таблица 2. Результаты практических и теоретических экспериментов
  Эксперимент 1a Эксперимент 1b Эксперимент 1c Эксперимент 1d Эксперимент 2 Эксперимент 3
Среда тестирования
Реальная Реальная Реальная Реальная Реальная Имитируемая
Поверхность Жесткая Ковер Ковер Мягкая Мягкая Нет сведений
Активные ограничения 1,2,3,4 1,2,3,4 1,2,3,4 1,2,3,4 1,2,4 Отсутствуют
Исходная пригодностьa (см/с) 1.6 1.3 3.1 2.8 5.0 Нет сведений
Финальная пригодностьa (см/с) 2.9 2.9 6.2 6.7 7.2 Нет сведений
Поведенческое разнообразие 5.2 4.1 8.4 3.2 6.3 Нет сведений
Морфологическое разнообразие 6.1 5.2 7.7 4.0 10.5 Нет сведений
Теоретическое морфологическое разнообразие 8.9 8.9 8.9 8.9 23.2 35.6
a)Средняя пригодность трех самых лучших подходящих агентов в первом/последнем поколении
 
В ходе эволюционного процесса было образовано множество вариаций морфологии, что в конечном итоге приведёт к более быстрым, т.е. более подходящим агентам (см. Таблицу 2). Например, средняя пригодность лучших трех агентов в первом поколении эксперимента 1d была 2.8 см/с, но увеличилась на 6.7 см/с в последнем поколении. Увеличение производительности достигается не только с помощью тонкой настройки параметров конструкции, но также с помощью «изобретения» качественно различных морфологий и образцов манеры передвижения.
Четыре агента были предметом дальнейшего анализа их образцов передвижения: лучшие агенты в последнем поколении экспериментов 1a, 1c и 2 и второй из лучших агентов в эксперименте 2. Каждый из этих агентов был оборудован и отслеживался тремя отражающими маркерами вместе с системой захвата движения (NaturalPoint, OptiTrack). Траектория средней точки этих маркеров была записана, в то время как агент передвинулся на ту же самую поверхность как в эксперименте. Траектории передвижений в горизонтальной плоскости были извлечены из отслеживающих данных и показаны на рис 4B. В то время как некоторые подходящие агенты показывают стабильные шаблоны передвижения, другие показывают довольно неустойчивые траектории передвижения вперёд.

 

Разнообразие и физические ограничения

Чтобы достичь продемонстрированного выше роста пригодности средствами искусственной эволюции, требуется достаточное разнообразие решений. Разнообразие решений выражается в различных вариантах поведения подходящих агентов и проявляется при взаимодействии с окружающей средой в тестовой фазе. Чтобы подсчитать количество поведенческого разнообразия во всех пяти экспериментах, поведение каждого агента классифицируется по четырем различным параметрам. Каждое уникальное сочетание особенностей рассматривается как класс поведений, и на этой классификации основывается поведенческое разнообразие, которое рассчитывается так, как описано в разделе «Анализ разнообразия». Поведенческое разнообразие для всех экспериментов представлено в таблице 2.
Классификация вариантов поведения опирается на практическое тестирование, потому что поведение возникает только при взаимодействии морфологии робота и его контроллера с окружающей средой. Для дальнейшего анализа применяется вторая шкала разнообразия, которая основывается на морфологии агентов. Каждый агент классифицируется согласно его фактору формы и размеру. Эти параметры могут быть рассчитаны с учетом генома агента без его физической сборки. Морфологическое разнообразие, которое рассчитывается с помощью этих измерений, также приводится в таблице 2. Полные данные включают в себя поведенческую и морфологическую категоризацию всех действительных агентов и приводятся в таблице S1. Поведенческое и морфологическое разнообразие — это два разных показателя, но они оба выявляют одну закономерность: рост морфологического разнообразия, очевидно, приводит к большему поведенческому разнообразию, хотя для этого нет никаких гарантий.
Множество элементов в наших экспериментах могут оказывать влияние на появление разнообразия. Было выявлено четыре главных физических ограничения в автоматизированном процессе строительства, что существенно влияет на степень разнообразия, формирующуюся в эволюционной оптимизации:
1) лимит полезной нагрузки робота-матери, который ограничивает максимальный вес подходящего агента,
2) доступный диапазон действий робота-матери, который ограничивает размер подходящего агента,
3) возможности стабильности и фиксации робота-матери, пока строится подходящий агент, 
4) возможности робота-матери скреплять элементы (например, может ли робот-мать соединять вертикальные и горизонтальные поверхности, или только определенные конфигурации).
Для анализа влияния этих четырёх физических ограничений на разнообразие, которого можно достичь, были произвольно отобраны 1,25 миллиона геномов с общими параметрами распределения от одного до 10 компонентов. Затем геномы были воссозданы в симуляторе для расчёта морфологии. Для виртуального эволюционного процесса были активированы наборы вышеупомянутых ограничений. Во-первых, все ограничения были активны в практических экспериментах 1a-1d, тогда как ограничение стабильности было удалено, как в эксперименте 2. В конечном счете, были ослаблены все четыре ограничения. Полученные морфологии были классифицированы в соответствии с их коэффициентами формы и размера. Из этой классификации рассчитывается теоретическое морфологическое разнообразие (Таблица 2). С помощью этого набора случайно сгенерированных геномов, может быть вычислена вероятность появления каждого типа строения. Получившиеся в результате распределения вероятности морфологии показаны на рис. 5А. В этом случае строительные ограничения строго учитываются и, таким образом, распределение смещается в сторону морфологии с одним или двумя элементами и высоким фактором формы (т.е. менее вероятно, чтобы робот-мать была в состоянии построить сложные агенты).
 
alt
Рис. 5. Исследование пространства проектных параметров
Каждый агент может располагаться в пространстве проектных параметров, учитывая номер элементов агента и фактор формы (А, В, С). Серая область показывает теоретический предел, который может достигаться с использованием кубических модулей. Часть этого пространства, которое может покрываться, ограничивается условиями, которые применяются к реальному строительному процессу. Цветные области иллюстрируют части пространства проектных параметров, что может достигаться с помощью различных наборов действующих ограничений. Все ограничения активны в (A), условие стабильности уменьшается в (B), и никакие ограничения не активны в (C). В результате это увеличивает доступную часть пространства проектных параметров. Толстые чёрные маркеры указывают на распределение агентов в эксперименте 1b (A) и эксперименте 2 (B). Их площадь пропорциональна числу агентов в ячейке. Правая колонка (D-I) показывает два примера морфологий в эксперименте.
 
Такое следование ограничениям в эволюционной динамике также может наблюдаться в практических экспериментах. В экспериментах 1a-d (результаты см. на рис. S2) с вышеупомянутыми физическими ограничениями робота-матери, активными на протяжении всего эволюционного процесса, в популяции начинает преобладать одна морфология после нескольких поколений. В экспериментах 1a и 1b результаты морфологий очень простые, а результаты, представленные в таблице 2, свидетельствуют, что на практике финальная пригодность только 2.9 см/с. Оба эксперимента заканчиваются в локальном максимуме. Распределение морфологии в эксперименте 1b показано толстым маркером на рис. 5A. В последующих результатах экспериментов 1c и 1d представлены более сложные агенты, но их популяция всё ещё представлена одним типом морфологии с несколькими усовершенствованиями в последних поколениях.
Напротив, настоящий прорыв в морфологическом разнообразии и образцах манеры ходьбы, когда физическое ограничение номер 3 было уменьшено, мы наблюдаем в результате эксперимента 2. Строительный процесс был настроен таким образом, что роботизированный агент в процессе строительства мог вручную фиксироваться для того, чтобы обеспечить стабильность положения. Результат показан на рис. 5B, где улучшение морфологического разнообразия наблюдается с помощью значительного распределения морфологий. В реальной экспериментальной серии, показанной на рис. 3, используется эволюционная конфигурация и можно увидеть, что эксперимент не сходится на одном решении, так как оптимизация до сих пор открывает новые успешные морфологии в последнем поколении. В результате этого эксперимента получается наибольшее реальное разнообразие и финальная пригодность 7.2 см/с.
Кроме того, проводился дополнительный теоретический анализ физических ограничений процесса строительства — путем отмены трех оставшихся остающихся ограничений. Рис. 5C показывает распределение вероятности дальнейшего распространения морфологий к снижению фактора формы и увеличению числа элементов, таким образом морфологическое разнообразие может улучшаться, и теоретически может быть построено больше сложных морфологий агентов. Экспериментальная установка не позволяет проводить такие эксперименты, но даже в теории это демонстрирует универсальность подхода к разработке огромного морфологического разнообразия с реалистичными модификациями в аппаратной установке робота-матери.
Таблица 2 показывает расчётное разнообразие всех реальных и теоретических экспериментов, представленных ранее. Этот анализ подчёркивает, что физические строительные ограничения имеют большее критическое воздействие на разнообразие последующих поколений, чем другие факторы, такие как условия окружающей среды. Для поддержания различных популяций в процессе оптимизации, увеличивающей вероятность избежать локального оптимума, эти ограничения должны быть тщательно обдуманными. 

 

Заключение

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

 

Список литературы

  1. Moczek AP, Sultan S, Foster S, Ledón-Rettig C, Dworkin I, Nijhout HF, et al. (2011) The role of developmental plasticity in evolutionary innovation. Proc R Soc B 278: 2705–2713. doi: 10.1098/rspb.2011.0971. pmid:21676977
  2. Pfeifer R, Lungarella M, Iida F (2007) Self-organization, embodiment, and biologically inspired robotics. Science 318: 1088–1093. pmid:18006736 doi: 10.1126/science.1145803
  3. Gross R, Dorigo M (2008) Self-assembly at the macroscopic scale. Proc IEEE 96: 1490–1508. doi: 10.1109/jproc.2008.927352
  4. Rubenstein M, Cornejo A, Nagpal R (2014) Programmable self-assembly in a thousand-robot swarm. Science 345: 795–799. doi: 10.1126/science.1254295. pmid:25124435
  5. Nolfi S, Floreano D (2000) Evolutionary robotics: The biology, intelligence, and technology of self-organizing machines. MIT Press, Cambridge, MA.
  6. Kumar S, Bentley PJ, editors (2003) On growth, form and computers. Academic Press.
  7. Bongard JC (2013) Evolutionary robotics. Commun ACM 56: 74–83. doi: 10.1145/2492007.2493883
  8. Sims K (1994) Evolving 3d morphology and behavior by competition. Artificial Life 1: 353–372. doi: 10.1162/artl.1994.1.4.353
  9. Bongard J (2011) Morphological change in machines accelerates the evolution of robust behavior. Proc Natl Acad Sci 108: 1234–1239. doi: 10.1073/pnas.1015390108. pmid:21220304
  10. Clune J, Lipson H (2011) Evolving three-dimensional objects with a generative encoding inspired by developmental biology. In: Proc. 2011 European Conference on Artificial Life, 2011. MIT Press, pp. 141–148.
  11. Doursat R, Sánchez C (2014) Growing fine-grained multicellular robots. Soft Robotics 1: 110–121. doi: 10.1089/soro.2014.0014
  12. Hornby G, Lohn J, Linden D (2011) Computer-automated evolution of an x-band antenna for nasa’s space technology 5 mission. Evolutionary Computation 19: 1–23. doi: 10.1162/EVCO_a_00005. pmid:20583909
  13. Thompson A (1997) An evolved circuit, intrinsic in silicon, entwined with physics. In: Higuchi T, Iwata M, Liu W, editors, Evolvable Systems: From Biology to Hardware, Springer, Berlin, Heidelberg, volume 1259 of Lecture Notes in Computer Science. pp. 390–405.
  14. Lohn J, Hornby G (2006) Evolvable hardware: using evolutionary computation to design and optimize hardware systems. IEEE Comput Intell Mag 1: 19–27. doi: 10.1109/mci.2006.1597058
  15. Yim M, Shen WM, Salemi B, Rus D, Moll M, Lipson H, et al. (2007) Modular self-reconfigurable robot systems [grand challenges of robotics]. IEEE Robot Autom Mag 14: 43–52. doi: 10.1109/mra.2007.339623
  16. Felton S, Tolley M, Demaine E, Rus D, Wood R (2014) A method for building self-folding machines. Science 345: 644–646. doi: 10.1126/science.1252610. pmid:25104380
  17. Nurzaman SG, Culha U, Brodbeck L, Wang L, Iida F (2013) Active sensing system with in situ adjustable sensor morphology. PLoS ONE 8: e84090. doi: 10.1371/journal.pone.0084090. pmid:24416094
  18. Wang L, Brodbeck L, Iida F (2014) Mechanics and energetics in tool manufacture and use: a synthetic approach. J R Soc Interface 11. doi: 10.1098/rsif.2014.0827
  19. Lipson H, Pollack J (2000) Automatic design and manufacture of robotic lifeforms. Nature 406: 974–978. pmid:10984047 doi: 10.1038/35023115
  20. Hiller J, Lipson H (2012) Automatic design and manufacture of soft robots. IEEE Trans Robot 28: 457–466. doi: 10.1109/tro.2011.2172702
  21. Jakobi N, Husbands P, Harvey I (1995) Noise and the reality gap: The use of simulation in evolutionary robotics. In: Morán F, Moreno A, Merelo JJ, Chacón P, editors, Advances in Artificial Life, Springer Berlin Heidelberg, volume 929 of Lecture Notes in Computer Science. pp. 704–720.
  22. Koos S, Mouret JB, Doncieux S (2013) The transferability approach: Crossing the reality gap in evolutionary robotics. IEEE Trans Evol Comput 17: 122–145. doi: 10.1109/tevc.2012.2185849
  23. Rieffel J, Pollack J (2005) Crossing the fabrication gap: evolving assembly plans to build 3-D objects. In: Evolutionary Computation, 2005. The 2005 IEEE Congress on. volume 1, pp. 529–536.
  24. Eiben A, Kernbach S, Haasdijk E (2012) Embodied artificial evolution. Evol Intel 5: 261–272. pmid:23144668 doi: 10.1007/s12065-012-0071-x
  25. Funes P, Pollack J (1999) Computer evolution of buildable objects. In: Evolutionary Design by Computers, Morgan Kaufmann, San Francisco. pp. 387–403.
  26. Kuehn T, Rieffel J (2012) Automatically designing and printing 3-D objects with EvoFab 0.2. In: Artificial Life. volume 13, pp. 372–378. doi: 10.7551/978-0-262-31050-5-ch049
  27. Peet RK (1974) The measurement of species diversity. Annu Rev Ecol Evol Syst 5: pp. 285–307. doi: 10.1146/annurev.es.05.110174.001441
  28. Samuelsen E, Glette K (2014) Some distance measures for morphological diversification in generative evolutionary robotics. In: Proceedings of the 2014 Conference on Genetic and Evolutionary Computation. New York, NY, USA: ACM, GECCO ‘14, pp. 721–728.
Источник: journals.plos.org.
Перевод: Кормалева Мария, Макарова Оксана, 2015 г.