350 likes | 521 Views
Behavior-based Formation Control for Multi-robot Teams. Victor Botev, M23230 Vassil Zorev, M23231. Цел на разработката. Behavior-based система върху екип роботи с няколко основни задачи: Достигане до зададено място( waypoint ) Избягване на препядствия Запзаване на структурата на екипа
E N D
Behavior-based Formation Control for Multi-robot Teams • Victor Botev, M23230 • Vassil Zorev, M23231
Цел на разработката • Behavior-based система върху екип роботи с няколко основни задачи: • Достигане до зададено място(waypoint) • Избягване на препядствия • Запзаване на структурата на екипа • Защо е може да е полезно позиционирането на роботите в екипа?
Конкретна имплементация • Проект за Американската Армия • Два типа имплементация • Като motor-schema върху AuRA(Autonomous Robot Architecture) • Като две отделни модула за поведение – за скорост и завиване – върху Unmanned Ground Vehicle(UGV) Demo II Architecture
Използвани роботи • Motor-based • Nomad 150 – роботи с по три колела с възможност за завиване без промяна на скоростта. Оборудвани са с утразвукови сензори за откриване на препятствия, GPS, Wi-Fi и цял лаптоп с Unix OS. • UGVD2A • Unmanned Ground Vehicles (UGV) – DGPS сензори, камера, сензори за преодолявамне на препятствия и устройства за контрол на завиването и скоростта.
Зараждане на идеята • Идеи взаимствани от природата • Предишни проекти • Нови идеи
Природни явления(1) • 1. Образуване на ята при птиците
Природни явления(2) • 2. Учене от другите • 3. Желание за запазване на формацията • 4. Спазване на дистанция • 5. Комбиниране на сетива за предпазване от хищници
Предишни проекти • Графични симулации на ято птици (boids) • Симулации на стада от еднокраки животни • Структурирано движение на роботи(без никаква друго поведение) • Симулация на прикриване (една група роботи следи за опасност друга се движи напред, после се сменят) • Частичен проект отговарящ на условията, но разглеждащ само един тип формация
Подход към проблема • Определяне на типове формации(взаимствани от армията) • Стъпки за запазване на формация • Параметризация
Видове формации Line Formation Diamond Formation Wedge Formation Column Formation
Стъпки за запазване на формация • Detect-formation-position • Maintain-formation
Техники за определняне на позицията • Спрямо: • Центъра(Unit-center-referenced) • Робот водач(Leader-referenced) • Избран за съсед роборт(Neighbor-referenced)
Параметър за шум • Налага се заради: • Не съвършенство на сензорите • Nomad 150 (GPS грешка – до 10см.) • UGV(DGPS грешка – до 1м.) • Не съвършенство на връзката за комуникация • Nomad 150 (до 1сек.) • UGV(до 7сек.) • Избягване на локални екстремуми
Motor-based имплементация • Основни действия • Параметризация • Maintain-formation реализация • Начин на измерване на резултати от тестове на реализацията(path-ratio, postion-error, time-out-of-formation) • Резултати от симулация • 100м + завой на 90° + 150м до контролна точка • 500м пътуване през местност с 2% препятствия • Резултати от реално приложение с Nomad 150
Основни действия • Move-to-goal • Avoid-static-obstacle • Avoid-robot • Maintain-formation
Move-to-goal • Привличане към целта с променлива сила (gain); става голяма, когато се стремим към целта • Vmagnitude – настройваем коефициент • Vdirection – същата като посоката към целта
Avoid-static-obstacle • Отблъскване от обект с променлива сила (gain) и обсег на влияние (ОВ); използва се за избягване на сблъсъци • Omagnitude – зависи от ОВ, gain, радиус на обекта и разстояние до центъра му • Odirection – по правата, минаваща през робота и центъра на препятствието в посока, обратна на препятствието
Avoid-robot • Частен случай на avoid-static-obstacle (формулите са едни и същи) • Параметрите имат различни стойности
Реализация на maintain-formation (1) • Пресмята се целевата позиция във формацията • Посоката на maintain-formation съвпада с посоката робот-целева позиция • Скоростта се пресмята на базата на 3 зони
Реализация на maintain-formation (2) Радиусите на всяка една от зоните присъстват като параметри на maintain-formation
Метрики за резултати от тестове • Path-length-ratio – средно изминато разстояние от роботите / дължината на маршрута • Position-error – средно отстояние от позиция във формация през целия маршрут • Процент от време вън от формацията
Резултати от симулация (250м + 90град завой + 250м) • Дават се 100м за влизане във формация (не участват в тестовете) • Изводи: оптимална за unit-center е diamond формацията, а за leader-referenced – wedge и line
Резултати от симулация (500м, 2% от площта е в препятствия) • Изводи: най-добри резултати се постигат при формация column. Като цяло unit-center превъзхожда leader-referenced
Резултати от реално приложение с Nomad 150 • Проведени са тестове с line, wedge, column unit-center формации; със и без препятствия • Използвани са същите параметри като при симулацията, само че с различни стойности (напр. вече не се добавя изкуствено шум)
Сравнение симулация – реален тест • симулация реален тест
UGVD2A имплементация • Основни действия • Параметризация • Maintain-formation реализация • Maintain-formation-speed • Maintain-formation-steer • Резултати
Основни действия • Move-to-goal • Avoid-obstacles • Avoid-robot • Maintain-formation-speed • Maintain-formation-steer
Maintain-formation – основна идея • Два паралени арбитъра: • За завиване • 30 възможни ъгъла • Този с най-много гласове печели • При равенство се избира централния ъгъл спрямо гаусово разпределение на гласовете • За скорост • най-малката печели • Какво налага разделянето на функцията?
Maintain-formation- означения • Rpos, Rdir – текуща позиция на робот и посока на главата • Rmag – текуща скорост на работа • Fpos – правилната позиция на робота във формацията • Fdir – посоката на движение на формацията • Faxis – лъч през Fpos с поска Fdir • Hdesired – пресментата посока на главата • ∂speed – необходимо изменение на скоростта • ∂steer – необходимо изменение на посоката • Vsteer – вота на робота за посока • Vspeed – вота на робота за скорост
Maintain-formation speed • ∂speed e [-1.0, 1.0] – зависи от това в коя зона се намира робота (големината на трите зони е предварително дефинирана чрез параметри) • Зоните са: • Балистична зона – в нея параметър приема максимална стойност (1.0) • Контролирана зона – в нея варира от 1.0 към 0 в зависимост от отдалечеността от мъртвата зона • Мъртва зона - ∂ speed = 0. K – параметър означаващ нивото на корекция
Maintain-formation steer(1) • ∂heading e [0, 90] – зависи от това в коя зона се намира робота (големината на трите зони е предварително дефинирана чрез параметри) • Зоните са: • Балистична зона –90°. • Контролирана зона – варира от 90° до 0° в зависимост от разстоянието до Мъртвата зона • Мъртва зона - 0°. Когато тимът е спрял посоката формулата се пресмята като:
Maintain-formation steer(2) • Накрая когато посоката е определена вотасе смята по следната формула: Положителния ъгъл значи завой на дясно, аотрицателния на ляво. При над 180 и под -180 се изважда или прибавя 360 и накрая се нормализира до възможностите на конкретното UGV.
Резултати от теста с UGVD2A(1) • Симулация – 1 работ с права траектор и пуснат произволно втори се опитва да застане в позиция.
Резултати от теста с UGVD2A(2) • Реална възстановка: • 2 робота • 1 км • Пресечена местност и дъжд • Защо unit-centered формация е избрана? • Maintain-formation-speed е ограничена само за намаляване на скоростта, робота не може да ускорява, за да запази формацията.
Заключение • 2 реализации • Обобщение на резултатите • Unit-centered-referenced – недостатъци • Трудно интеграция на човек в подобна формация • Увеличаване на трафика • Множество пасивни сензори за приемане на координатите на другите роботи