Взаимодействие, понимание и последующее реагирование на ситуацию — это одни из величайших качеств человека, и именно это делает нас такими, какие мы есть. Мы рождены, чтобы жить в социальном обществе, и мы всегда знали о себе, что являемся самым воспитанным социальным существом, известным с момента создания этой планеты.
Социальная культура и взаимодействие друг с другом для достижения общей цели присущи не только людям, но и другим видам на этой планете, таким как стая птиц, рыб или пчел, у всех у них есть одна общая черта: коллективное поведение. Когда птицы мигрируют, часто можно увидеть, что они находятся в группе, которую возглавляет ведущий член их группы, и все следуют за ними, и их группа имеет определенные геометрические формы, несмотря на то, что птицы не имеют чувства форм и фигур. Также группа составлена так, что старшие члены группы находятся на границах, а молодые или новорожденные — в центре.
Те же характеристики присущи огненным муравьям, эти муравьи немного отличаются от других видов муравьев и особенно известны своим групповым поведением: они строят вместе, едят вместе и вместе защищают свои колонии от добычи, в основном они знают что они могут добиться большего, когда находятся в группе. Недавнее исследование группового поведения этих муравьев показало, что они способны создавать прочные конструкции всякий раз, когда это необходимо, например, когда необходимо создать небольшой мост для перехода.
Коллективное поведение этих социальных животных и насекомых помогает им достигать большего, несмотря на все ограничения. Исследователи продемонстрировали, что особям из этих групп не нужно какое-либо представление или сложные знания, чтобы производить такое сложное поведение. У общественных насекомых, животных и птиц особи не осведомлены о глобальном статусе колонии. Знания роя распространяются среди всех агентов, при этом отдельная особь не может выполнить свою задачу без остальной части роя. Что, если это коллективное восприятие можно будет перенести в группу роботов? Это и есть роевая робототехника/рой роботов (swarm robotics) и об этом мы подробно узнаем в этой статье .
Роботы как часть Роя
Наша среда, в которой мы живем, очень вдохновляет нас, многие из нас черпают вдохновение для своей работы из природы и окружающей среды, известные изобретатели, такие как Леонардо да Винчи, сделали это очень хорошо, и это можно увидеть в его проектах в современном мире. Мы также заставляем тот же процесс работать для нас для решения проектных и инженерных проблем, например, нос сверхскоростного поезда вдохновлен клювом зимородка, чтобы он имел большую скорость, был более энергоэффективным и производил относительно меньше шума при прохождении через него. И для этого придуман термин, известный как биомимикрия .
Таким образом, для решения сложных задач, в которых вмешательство человека затруднено и имеет более высокую сложность, требуется нечто большее, чем просто обычный робот, например, в некоторых случаях использования, когда здание обрушивается из-за землетрясения, и люди впадают в депрессию под бетоном, безусловно, для решения этой проблема требуется какой-то робот, который может выполнять несколько задач одновременно: и достаточно маленький, чтобы преодолевать бетон, и помогать, и, в первую очередь получать информацию о человеческом существовании. Первое что вам приходит на ум для решения данной задачи, это группа маленьких роботов, которые достаточно маленькие и автономные, и способные получать информацию — и это непременно имитирует какой-то рой насекомых или мух и отсюда на первое место и выходит роевая робототехника. Роевая робототехника — это область мультиробототехники, в которой большое количество роботов координируются распределенным и децентрализованным образом. Она основана на использовании маленьких простых роботов, вдохновленных коллективным поведением социальных насекомых, поэтому большое количество простых роботов могут выполнять сложную задачу более эффективно, чем один робот, придавая группе надежность и гибкость.
Организации и группы возникают в результате взаимодействия между особями, а также между особями и окружающей средой. Эти взаимодействия разбросаны по всей колонии, поэтому колония может решать задачи, которые трудно решить в одиночку, что означает работу над общей целью.
Как рой роботов вдохновлен социальными насекомыми
Мультироботизированные системы сохраняют некоторые характеристики социальных насекомых, такие как надежность: рой роботов может работать, даже если некоторые из особей потерпят неудачу или в окружающей среде возникнут нарушения; гибкость, рой способен создавать разные решения для разных задач и менять роль каждого робота в зависимости от необходимости; масштабируемость: рой роботов способен работать в группах разного размера: от нескольких особей до тысяч.
Характеристики роя роботов
Как уже говорилось, простой рой роботов приобретает характеристики социальных насекомых, такие как:
1. Рой роботов должен быть автономен и способен чувствовать и действовать в реальной среде.
2. Число роботов в стае должно быть достаточно большим, чтобы обеспечить выполнение каждой отдельной задачи как группы, которую они должны выполнять.
3. В стае должна быть однородность, в стае могут быть разные группы, но их не должно быть слишком много.
4. Одиночный робот из стаи должен быть неспособным и неэффективным в отношении своей основной цели, то есть им необходимо сотрудничать, чтобы добиться успеха и улучшить производительность.
5. Все роботы должны иметь только локальные возможности обнаружения и связи с соседним партнером роя, это обеспечивает распределенную координацию роя, а масштабируемость становится одним из свойств системы.
Мультиробототехнические системы и роевая робототехника
Роевая робототехника является частью мультиробототехнической системы, и как группа они имеют некоторые характеристики, которые определяют их групповое поведение.
Коллективный размер: Коллективный размер — это SIZE-INF, который равен N>>1, что противоположно SIZE-LIM, где количество роботов N меньше, чем соответствующий размер среды, в которую они помещены.
Дальность связи: Дальность связи COM-NEAR, поэтому роботы могут общаться только с теми роботами, которые находятся достаточно близко.
Топология связи. Топология связи для роботов в рое обычно будет TOP-GRAPH, роботы связаны в общую топологию графа.
Пропускная способность связи: Пропускная способность связи — ПОЛОСНОЕ ДВИЖЕНИЕ. Стоимость связи между двумя роботами такая же, как и при перемещении роботов между местами.
Коллективная реконфигурируемость: Коллективная реконфигурация обычно представляет собой ARR-COMM, это скоординированная договоренность с участниками, которые общаются, но это также может быть ARR-DYN, то есть динамическая договоренность, позиции могут меняться случайным образом.
Технологические возможности: Технологические возможности – это PROC-TME, где вычислительная модель представляет собой эквивалент настроечного устройства.
Коллективный состав: Коллективный состав — это CMP-HOM, что означает, что роботы однородны.
Преимущества мультиробототехнических систем по сравнению с одним роботом
- Параллелизм задач. Мы все знаем, что задачи могут быть декомпозируемы на ряд более простых задач, и мы все знаем о методе гибкой разработки, поэтому, используя параллелизм, группы могут выполнять задачу более эффективно.
- Выполнение задач: группа особей более мощна чем одиночная особь, и то же самое относится и к роевой робототехнике, когда группа роботов может выполнить определенную задачу, которая невозможна для одного робота.
- Распределение в сенсорах: поскольку рой обладает коллективным сенсором, его диапазон сенсоров шире, чем диапазон одиночного робота.
- Распределение в действии: группа роботов может одновременно выполнять разные действия в разных местах.
- Отказоустойчивость: отказ одного робота в группе роботов в группе не означает, что задача не удастся или ее невозможно будет выполнить.
Экспериментальные платформы в Swarm Robotics
Существуют различные экспериментальные платформы, используемые для роевой робототехники, что предполагает использование разных экспериментальных платформ и разных роботизированных симуляторов для стимулирования среды роя роботов без необходимости использования реального оборудования.
Роботизированные платформы
Различные роботизированные платформы используются в разных роботизированных экспериментах в разных лабораториях.
1. Swarmbot
Используемые датчики: он имеет различные датчики, помогающие боту, включая датчики дальности и камеру.
Движение: для перемещения от одного местоположения к другому используются колеса.
Разработчик: разработан Университетом Райса, США.
Описание: SwarmBot — это роевая роботизированная платформа, разработанная для исследований Университетом Райса. Он может автономно работать около 3 часов без подзарядки, а также эти боты могут самостоятельно находить и стыковаться с зарядными станциями, расположенными на стенах.
2. Kobot
Используемые датчики: предполагает использование датчика расстояния, видеодатчиков и компаса.
Движение: для движения используются колеса.
Разработчик: разработан в исследовательской лаборатории KOVAN Ближневосточного технического университета, Турция.
Описание: Kobot специально разработан для исследований в области роевой робототехники. Он состоит из нескольких датчиков, которые делают его идеальной платформой для выполнения различных роботизированных задач, таких как скоординированные движения. Он может работать автономно в течение 10 часов на одном заряде. Он также включает в себя сменный аккумулятор, который необходимо заряжать вручную. Он в основном используется при реализации сценариев самоорганизации.
3. S-bot
Используемые датчики: для обеспечения работы используются различные датчики, такие как датчики света, ИК-излучения, положения, силы, скорости, температуры, влажности, ускорения и микрофона.
Движение: для своих движений он использует специальные гусеницы.
Разработчик: разработан Федеральной политехнической школой Лозанны (EPFL), Швейцария.
Описание: S-bot — одна из нескольких компетентных и мощных роевых роботизированных платформ, когда-либо созданных. Он имеет уникальную конструкцию захвата, способную захватывать предметы и других роботов. Также они могут примерно проработать 1 час на одном заряде.
4. Jasmine Robot
Используемые датчики: используются датчики расстояния и освещенности.
Разработчик: Разработан Штутгартским университетом, Германия.
Движение: перемещается на колесах.
Описание: Мобильные роботы Jasmine — это роевые роботизированные платформы, которые используются во многих исследованиях роя роботов.
5. E-Puck
Используемые датчики: он использует различные датчики, такие как расстояние, камера, направление, ускорение и микрофон.
Разработано: Федеральной политехнической школой Лозанны (EPFL), Швейцария.
Движение: основано на движении колеса.
Описание: E-puck предназначен в первую очередь для образовательных целей и является одним из самых успешных роботов. Однако из-за своей простоты его часто используют и в исследованиях роевой робототехники. Он оснащен заменяемыми пользователем батареями со временем работы 2-4 часа.
6. Kilobot
Используемые датчики: используется комбинация датчиков расстояния и освещенности.
Разработчик: Гарвардский университет, США
Движение: использует вибрации системы для движения тела системы.
Описание: Kilobot — сравнительно недавняя роевая роботизированная платформа с уникальной функцией групповой зарядки и группового программирования. Благодаря своей простоте и низкому энергопотреблению время безотказной работы составляет до 24 часов. Роботы заряжаются вручную группами на специальной зарядной станции.
Симуляторы
Роботизированные симуляторы решают проблему аппаратного обеспечения, необходимого для проверки достоверности ботов в искусственно смоделированных параметрах реальной среды.
Существует множество роботизированных симуляторов, которые можно использовать для экспериментов с участием нескольких роботов, а точнее, для экспериментов с роем роботов, и все они различаются по своим техническим аспектам, а также по лицензии и стоимости. Вот некоторые из симуляторов роевых ботов и мультироботных платформ:
- SwarmBot3D: SwarmBot3D — это симулятор мультиробототехники, разработанный специально для робота S-Bot проекта SwarmBot.
- Microsoft Robotics Studio: Робототехническая студия — это симулятор, разработанный Microsoft. Он позволяет моделировать несколько роботов и требует для работы платформы Windows.
- Webots: Webots — это реалистичный мобильный симулятор, позволяющий моделировать несколько роботов с уже построенными моделями реальных роботов. Он может моделировать реальные столкновения, применяя физику реального мира. Однако его производительность снижается при работе с несколькими роботами, что затрудняет моделирование с большим количеством роботов.
- Player/stage/Gazebo (Игрок/сцена/беседка): Игрок/сцена/беседка — это симулятор с открытым исходным кодом, обладающий возможностями работы с несколькими роботами и широким набором доступных роботов и датчиков, готовых к использованию. Он хорошо справляется с моделированием экспериментов с роем роботов в 2D-среде с очень хорошими результатами. Численность популяции в окружающей среде может достигать 1000 простых роботов в реальном времени.
Алгоритмы и методы, используемые для различных задач в Swarm Robotics
Здесь мы собираемся изучить различные методы, используемые в роевой робототехнике для решения различных простых задач, таких как агрегация, дисперсия и т. д. Эти задачи являются основными начальными шагами для всех высококлассных специалистов, работающих в роевой робототехнике.
Агрегация: Агрегация объединяет всех ботов, и это действительно важный и начальный шаг на других сложных этапах, таких как формирование шаблонов, самосборка, обмен информацией и коллективные движения. Робот использует свои датчики, такие как датчики приближения и микрофон, который использует механизмы обмена звуком с помощью исполнительного механизма, такого как динамики. Датчики помогают одному боту найти ближайшего робота, который также оказывается центром группы, при этом бот должен сосредоточиться исключительно на другом боте, который находится в центре группы, и тянуться к нему, за ним следуют все члены роя, что позволяет им объединить свои усилия.
Рассредоточение: когда роботы собираются в одном месте, следующим шагом является их рассредоточение в среде, где они работают как единый составной член роя, и это также помогает в исследовании окружающей среды, с которой работает каждый бот роя как один датчик. Для рассредоточения роботов были предложены и использованы различные алгоритмы, один из подходов включает в себя алгоритм потенциального поля для рассредоточения роботов, в котором роботы отталкиваются от препятствий и других роботов, которые позволяют среде роя рассеиваться линейно.
Один из других подходов включает дисперсию, основанную на считывании сигналов интенсивности беспроводной связи. Сигналы интенсивности беспроводной связи позволяют роботам рассредоточиться без ведома своих ближайших соседей: они просто улавливают интенсивность беспроводной связи и размещают их, чтобы распределить их в окружающей среде.
Формирование шаблонов. Формирование шаблонов в роевой робототехнике является основной характеристикой их коллективного поведения. Эти шаблоны могут очень помочь, когда необходимо решить проблему, требующую совместной работы всей группы. При формировании шаблона боты создают глобальную форму, изменяя часть отдельных роботов, где каждый бот имеет только локальную информацию.
Рой роботов образует структуру с определенной внутренней и внешней формой. Правила, которые заставляют частицы/роботы объединяться в желаемую формацию, являются локальными, но возникает глобальная форма, не имеющая никакой глобальной информации относительно отдельного члена роя. Алгоритм использует виртуальные пружины между соседними частицами, принимая во внимание, сколько у них соседей.
Коллективное движение: какой смысл в команде, если они все не могут решить проблему вместе, и это лучшая часть стаи? Коллективное движение — это способ координировать работу группы роботов и заставить их двигаться вместе как сплоченную группу. Это основной способ выполнения некоторых коллективных задач, который можно разделить на два типа: формирование и скопление.
Существует множество методов коллективного движения, но вызывают беспокойство только те, которые допускают масштабируемость с растущим числом роботов, когда каждый робот распознает относительное положение своего соседа и реагирует с соответствующими силами, которые могут быть притягивающими или отталкивающими, образуя структуры для коллективных движений.
Распределение задач. Распределение задач — проблемная область в роевой робототехнике на основе разделения труда. Тем не менее, существуют различные методы разделения труда, один из них заключается в том, что каждый робот будет наблюдать за задачами другого робота и сохранять историю этих задач, а затем может изменить свое собственное поведение, чтобы приспособиться к задаче. У этого метода есть свои плюсы: более высокая производительность, но в то же время у него есть недостаток: из-за ограниченной надежности и потери пакетов во время связи он оказывается менее масштабируемым. В другом методе задачи объявляются некоторыми роботами, и определенное количество других роботов одновременно их посещают. Это простой и реактивный метод.
Поиск источника: Роевая робототехника очень успешно справляется с задачей поиска источника, особенно когда источник поиска сложен, например, в случае звука или запаха. Поиск с помощью роевой робототехники осуществляется двумя способами: глобальным и локальным, и разница между ними заключается в способе связи. Один с глобальной связью между роботами, в которой роботы могут найти источник глобального максимума. Другой ограничен только локальной связью между роботами для поиска локальных максимумов.
Транспортировка предметов: Муравьи осуществляют коллективную транспортировку предметов, при которой отдельный муравей ждет другого партнера для сотрудничества, если транспортируемый объект слишком тяжел. Под управлением одних и тех же легких роботов рой заставляет все работать одинаково, при этом каждый робот имеет преимущество, заключающееся в сотрудничестве с другими роботами для транспортировки объектов. S-bots предлагает отличную платформу для решения проблемы транспортировки, где они самособираются для совместной работы, а их алгоритм масштабируется, если объект, который нужно транспортировать, тяжелый.
Другой метод — коллективная транспортировка объектов, при которой объекты собираются и сохраняются для последующей транспортировки. Здесь у роботов есть две разные задачи — собирать объекты и помещать их в тележку, а также коллективно перемещать тележку с этими объектами.
Коллективное картографирование: Коллективное картографирование используется для исследования и картографирования больших помещений с использованием большого количества роботов.
В одном методе картографирование выполняется двумя группами из двух роботов, которые обмениваются информацией для объединения карт. Другой метод основан на ролях, при котором робот может принять любую из двух ролей: движения или ориентира, которые он может обменять на движение роя. Кроме того, роботы имеют определенную оценку своего положения, поэтому им необходимо оценить местоположение других роботов, чтобы построить коллективную карту.
Реальное применение роевой робототехники
Хотя обширные исследования в области роевой робототехники начались примерно в 2012 году, до сих пор они не получили коммерческого практического применения, они используются в медицинских целях, но не в таких больших масштабах, и все еще находятся на стадии тестирования. Существуют различные причины того, что эта технология не выходит на коммерческую основу.
Разработка алгоритма для индивидуального и глобального поведения: Коллективное поведение роя исходит из индивидуума, что требует проектирования отдельного робота и его поведения, и в настоящее время не существует метода перехода от индивидуального к групповому поведению.
Тестирование и внедрение: Обширные требования к лабораториям и инфраструктуре для дальнейшего развития.
Анализ и моделирование. Различные базовые задачи, выполняемые роевой робототехникой, позволяют предположить, что они нелинейны, и поэтому построение математических моделей для их работы довольно сложно.
Помимо этих проблем, существуют и другие проблемы безопасности для отдельных людей и стаи из-за их простой конструкции:
1. Физический захват роботов.
2. Личность особи в рое, которую робот должен знать, если он взаимодействует с роботом своего роя или другого роя.
3. Коммуникационные атаки на особь и рой.
Основная цель роевой робототехники — охватить обширный регион, где роботы смогут рассредоточиться и выполнять соответствующие задачи. Они полезны для обнаружения опасных событий, таких как утечки, мины и т. д., а главное преимущество распределенной и мобильной сети датчиков заключается в том, что она может обнаруживать обширную территорию и даже воздействовать на нее.
Приложения роевой робототехники действительно перспективны, но потребность в ее развитии все еще существует, как в алгоритмической, так и в моделирующей части.