Роевой интеллект: как стая роботов принимает решения и чем это грозит
Инженеры из Бельгии и Дании предложили кардинально новый подход к совместной работе роботов. Он вдохновлен работой нервной системы и сочетает преимущества иерархии и самоорганизации. Достижение описано в научной статье, опубликованной в журнале Science Robotics.
Неповоротливая пирамида
Самый очевидный способ наладить совместную работу — иерархия. У каждого есть непосредственный начальник, у того, в свою очередь — свой руководитель, и так до самого верха. Каждый делает свою работу, докладывая наверх ее итоги и выполняя распоряжения.
У этого древнего как мир подхода есть недостатки. Главный из них — уязвимость системы перед потерей руководства. Если уничтожить или изолировать генеральный штаб, армия будет парализована. Другое слабое звено — немасштабируемость управленческих решений. Огромной корпорацией нельзя управлять теми же приемами, что отделом в небольшой фирме. Наконец, иерархические системы не приспособлены к быстрой смене задач и обстоятельств. Именно поэтому при органах власти то и дело возникают разного рода координационные советы и рабочие группы.
Когда речь идет не о людях, а о роботах, все эти проблемы резко обостряются. Потеря высших руководителей — редкое и чрезвычайное событие, но машины выходят из строя гораздо чаще людей. Бывший начальник отдела может вырасти в министра, осваивая новые навыки управления, а робот выполняет жесткую программу. Люди могут сами принять решение, что структура власти устарела и требуется ее перестроить, а роботам нужно вмешательство программиста.
Без царя во главе
Кардинально другой подход к совместной работе — самоорганизация. Нет начальников и подчиненных, есть только горизонтальные связи. Даже когда все участники действия имеют одинаковые программы, при взаимодействии друг с другом они могут занимать разные ниши и играть разные роли. Живая природа давно освоила этот подход. Достаточно взглянуть на слаженный и сложный труд муравьев-рабочих или взаимодействие нейронов в мозге.
Преимущества самоорганизации очевидны. Такие системы отказоустойчивы: раз все участники одинаковы, любого легко заменить. Они гибкие: схема взаимодействия участников не задана заранее, она может перестроиться, если возникнет необходимость. Такой необходимостью может быть, например, резкое увеличение числа участников. Получаем третье преимущество — масштабируемость.
Идея создать самоорганизующийся рой роботов очень соблазнительна, и последние 20 лет она активно разрабатывается. Но пока такие проекты не вышли из стен лабораторий. Дело в ключевой особенности самоорганизации: разработчик задает программу отдельным роботам, и из их взаимодействия «само собой» складывается поведение группы. Но какой именно алгоритм нужно предписать отдельному муравью, чтобы они все вместе построили муравейник? Решать такие задачи даже на мощнейших суперкомпьютерах очень сложно. Эволюция шла путем проб и ошибок, но у разработчиков нет миллионов лет на эксперименты. Даже если ценой огромных усилий нужный алгоритм удается найти, это достижение нельзя перенести на другие задачи. Если нужно оборонять муравейник, а не строить его, поиск алгоритма для отдельного муравья придется начинать заново.
Все равны, но некоторые равнее
Авторы новой работы предлагают третий путь. Их цель состояла в том, чтобы поведение роя было легко понять, исходя из программ отдельных роботов.
Ученые вернули в схему вертикальные связи. Потенциально равноправные роботы, или агенты, организуются в иерархическую систему. Авторы назвали ее самоорганизующейся нервной системой (self-organizing nervous systems, или SoNS). В рое может возникнуть несколько таких систем. Во главе каждой SoNS стоит «мозг» — это термин авторов. В данном случае, это робот, собирающий данные со всей сети, принимающий решения и отдающий команды. Все остальные участники системы имеют вышестоящих и нижестоящих «коллег». Вниз по цепочке они отправляют команды «мозга», а вверх, к «мозгу» — собранные данные. При этом роботы еще и выполняют непосредственную задачу, например, обходят препятствия, и в решении этой задачи сохраняют определенную свободу действий. Каждый агент самостоятельно взвешивает команды «мозга» и решает, что важнее — предписанные «начальником» действия или собственные решения.
Но эта иерархия — временная и динамичная. Разные SoNS в пределах одного роя могут перестраиваться, сливаться друг с другом или, наоборот, дробиться на части. Вот как это происходит. Каждый робот отправляет всем соседям в пределах видимости предложение стать его подчиненным. Если адресат соглашается, то он вместе со всеми своими подчиненными «поступает в распоряжение» вербовщика. Так мелкие сети сливаются в крупную. Наоборот, если агент «увольняет» нижестоящего, тот уходит вместе со своими подчиненными, становясь «мозгом» отдельной сети. То же самое происходит, если между «начальником» и «подчиненным» теряется связь. Система не выходит из строя, а просто дробится на две SoNS.
Вербовка не всегда проходит успешно. Кандидат отказывается «наниматься», если он уже работает или недавно работал в той же системе, что и вербовщик. Еще одна причина для отказа — адресат «считает себя лучше» вербовщика. Говоря точнее, каждому роботу присваивается число, которое разработчики называют качеством. Роботы подчиняются только тем, чье качество выше. Это не врожденная характеристика, а скорее капитал, который можно зарабатывать или тратить. Робот может повысить или понизить свое качество, если того требует алгоритм.
Каждый робот потенциально может стать «мозгом» сколь угодно большой сети. Если «мозг» выходит из строя, его быстро заменяет один из соседей — тот, кто в данный момент обладает самым высоким качеством.
Разработчики проверили свое детище на реальных устройствах. Рой состоял из наземных машин и воздушных дронов-квадрокоптеров. В каждом эксперименте участвовали по восемь роботов.
Инженеры дали своим «подопечным» четыре задания. В первом агенты должны были добраться до цели, объезжая препятствия. Во втором машины должны были следовать максимально широкой полосой по все более сужающемуся коридору. В третьем тесте роботы искали самый широкий проход в стене. Четвертой стала поисково-спасательная операция: требовалось найти несколько спрятанных среди препятствий роботов и подключить их к сети. Данные о расположении препятствий и друг друга агенты собирали самостоятельно с помощью своих датчиков. В целом все четыре эксперимента прошли успешно.
Из лабораторий на полигоны
Подход авторов действительно имеет кое-что общее с работой нервной системы: она тоже сочетает иерархию и самоорганизацию. С одной стороны, в ней хватает «пирамид», обобщающих множество входящих сигналов в один исходящий. Это начинается уже с отдельного нейрона, у которого несколько входов (дендритов) и один выход (аксон), и воспроизводится на самых разных уровнях. С другой стороны, нейронные сети мозга активно перестраиваются и соревнуются друг с другом. Перенос этого подхода на управление роботами и впрямь может оказаться очень плодотворным.
«Умным» роям роботов можно найти сколько угодно применений: от поисково-спасательных работ до домашней уборки. Насколько их внедрение будет рентабельным, зависит от конкретных технологий, о которых пока рано говорить. Но об одной сфере можно судить с уверенностью — о военной. Массовое применение дронов уже изменило поле боя так, что впору переписывать все учебники тактики, стратегии и военной логистики. Роевой интеллект сделает их еще более грозным оружием, и с этим нужно считаться.
Мнение редакции может не совпадать с точкой зрения автора