Введение 4
Глоссарий 6
Глава 1. Обзор литературы 8
1.1. Обзор терминологии 8
1.2. Задачи роевой робототехники 11
1.3. Сенсорные устройства в роевой робототехнике 12
1.4. Обзор систем координатных меток 12
Глава 2. Предварительные исследования 17
2.1. Используемые инструменты 17
2.2. Сравнение и выбор сенсорных устройств 18
2.3. Сравнение и анализ существующих СКМ 22
2.3.1. Сравнение меток на устойчивость к вращению 23
2.3.2. Сравнение меток на устойчивость к перекрытию 27
Глава 3. Оригинальный алгоритм роевого поведения 31
3.1. Преимущества и недостатки оригинального алгоритма роевого
поведения 31
3.2. Описание оригинального алгоритма роевого поведения 33
3.2.1. Параметры алгоритма 34
3.2.2. Ограничения, накладываемые на параметры алгоритма . 35
3.2.3. Определения, используемые в алгоритме 35
3.2.4. Используемые определения множеств и графов роботов . 36
3.2.5. Определение направления движения члена роя 37
3.2.6. Вычисление величины управляющего воздействия .... 38
3.2.7. Правило деактивации связи между роботами 39
Глава 4. Модификация алгоритма роевого поведения 51
4.1. Модификация используемых определений 51
4.2. Модификация используемых коэффициентов 53
Глава 5. Валидация модицированного алгоритма 60
5.1. Валидация алгоритма в математической симуляции 60
5.2. Валидация алгоритма в симуляторе Gazebo 64
Глава 6. Заключение 67
Список литературы
Перед современной робототехникой, как перед областью научного знания, стоят вызовы, неразрывно связанной с применением результатов научных изысканий на практике. Эти вызовы включают в себя спектр задач, решаемых робототехническими системами в течение их функционирования. Для мобильных робототехнических систем самыми важными задачами становятся следующие три: локализация, картографирование и планирование маршрута [1]. За прошедшие годы развития робототехники эти задачи получили множество решений для различных типов роботов и применимых в самых разных средах.
Вместе с работой над одиночными роботами, велись и исследования коллективной (или групповой) робототехники. Группы роботов (часто называемых «роями», англ. swarm) могут быть использованы для нивелирования слабых сторон некоторых робототехнических систем (РТС) при помощи взаимодействия с другими робототехническими системами. Например, беспилотные наземные роботы (БНР) могут эффективно совместно функционировать с беспилотными летательными аппаратами (БПЛА), получая от них информацию о препятствиях в окружающей робота среде [2]. Широкое применение могут получить и гомогенные группы роботов, выполняющие, например, задачи картографирования местности в разы быстрее индивидуальных робототехнических систем [3]. Мощное развитие это направление робототехники получило в последнее десятилетие вместе с удешевлением электронных компонентов и широким распространением мощных одноплатных компьютеров [4]. Эти два аспекта позволили большему количеству исследователей перевести теоретические исследования в практическую плоскость: создание групп роботов стало дешевле и перестало требовать глубоких познаний в электронике и схемотехнике.
Целью данной работы является изучение возможностей создания и сохранения роем роботов связности во время движения в пространстве с препятствиями. Сохранение связности по сути своей позволяет рою роботов оставаться цельной функциональной единицей, а сама задача сохранения связности становится особенно сложной в моменты прохода группой роботов узких мест между препятствиями. В данной работе будет реализован и существенно модифицирован существующий алгоритма роевого поведения. Для его валидации будут проведены многочисленные симуляции с математическими моделями и роботами в среде ROS/Gazebo. Симуляции в среде ROS/Gazebo подготовлены с учетом реальных экономических ограничений роев роботов - для этого в работе приведен анализ существующих подходов к сенсорному восприятию роботов. Также с целью увеличения практической ценности симуляций, проведено сравнение разных систем координатных меток для выбора наилучшей в решаемой задаче.
Данная работа посвящена реализации и модификации алгоритма роевого поведения в среде ROS/Gazebo. Перед непосредственной реализацией была проведена большая исследовательская работа. Были выполнены исследования терминологии роевой робототехники - история становления определений и используемые в данный момент термины. Далее были изучены используемые в научной литературе по роевой робототехнике сенсорные устройства - это позволило качественно оценить, какие сенсорные устройства должны быть использованы в симуляции для повышения ее практической ценности. На основе выбранных сенсоров был определен способ определения позиций роботов в окружающем пространстве - это системы координатных меток. Метки нескольких семейств были сравнены в виртуальных экспериментах и лучшее по выбранным критериям семейство меток было использовано в симуляции Gazebo. Основная часть работы посвящена алгоритму роевого поведения - оригинальный алгоритм дан в кратком виде, приспособленном для реализации на любом языке программирования. Краткая нотация и систематизированность сведений дает возможность быстро приступать к реализации отдельных частей программного кода, легко отделяя их функционал друг от друга и позволяя вести совместную разработку. Далее описаны модификации, введенные в алгоритм с описанием мотивации каждого изменения и примерами улучшения работы алгоритма. Эти модификации снимают некоторые ограничения, используемые в оригинальной работе; обеспечивают целостность используемого математического аппарата и расширяют возможности алгоритма по прохождению узких пространств сложной формы. Важной частью работы является валидация модифицированного алгоритма - для этого были проведены множественные тесты с разным количеством роботов, разными формами препятствий в математической симуляции, в чем был недостаток в оригинальной работе. Валидация в среде ROS/Gazebo показала, что алгоритм применим в условиях использования более реалистичных моделей роботов - учитывающих инерцию, массу и имеющими дифференциальный привод. Однако данная валидация показала ограниченную применимость алгоритма - успех достигался только в случае использования систем объективного контроля для определения позиций роботов. Валидация с помощью меток, закрепленных на роботах, показала несостоятельность такого подхода - даже при использовании сенсоров высочайшего качества, доступных в потребительском сегменте и меток большого размера, слабо применимых на практике. Это означает, что практическое воплощение данного алгоритма роевого поведения должно быть иным, чем оно представляется сейчас в симуляции - и работы по изучению различных возможностей должны быть продолжены. Эти работы могут заключаться в изучении других принципов сенсорного восприятия; в дальнейшем, более глубоком сравнении различных СКМ; в модифицировании алгоритма с учетом несовершенств сенсорного восприятия.
1. Fuentes-Pacheco J. , Ruiz-Ascencio J., Rendon-Mancha J. M . Visual simultaneous localization and mapping: a survey // Artificial Intelligence Review. — 2015. —
Т. 43, № 1. — С. 55—81.
2. ROS-моделирование взаимодействия БПЛА и наземного беспилотного робота для решения задачи планирования маршрута в статической среде /
А. Габдуллин [и др.] // Беспилотные транспортные средства с элементами искусственного интеллекта. — 2016. — С. 21—30.
3. Coordination for multi-robot exploration and mapping / R. Simmons [и др.] // Aaai/Iaai. — 2000. — С. 852—858.
4. Pi R. Raspberry Pi Model B. — 2015.
5. Recent progress in local and global traversability for planetary rovers / S. Singh [и др.] // Robotics and Automation, 2000. Proceedings. ICRA 00. IEEE International Conference on. Т. 2. — IEEE. 2000. — С. 1194—1200.
6. Magid E., Tsubouchi T. Static balance for rescue robot navigation: Discretizing rotational motion within random step environment // International Conference on Simulation, Modeling, and Programming for Autonomous Robots. — Springer. 2010. — С. 423—435.
7. Building a search tree for a pilot system of a rescue search robot in a discretized random step environment / E. Magid [и др.] // Journal of Robotics and Mechatronics. — 2011. — Т. 23, № 4. — С. 567.
8. Buyval A., Afanasyev I., Magid E. Comparative analysis of ROS-based Monocular SLAM methods for indoor navigation // Ninth International Conference on Machine Vision. — International Society for Optics, Photonics. 2017. — 103411K— 103411K.
9. Wolcott R. W., Eustice R. M. Visual localization within LIDAR maps for automated urban driving // Intelligent Robots and Systems (IROS 2014), 2014 IEEE/RSJ International Conference on. — IEEE. 2014. — С. 176—183.
10. Kang S.-M., Ahn H.-S. Design and realization of distributed adaptive formation control law for multi-agent systems with moving leader // IEEE Transactions on Industrial Electronics. — 2016. — Т. 63, № 2. — С. 1268—1279. — DOI: 10.1109/tie.2015.2504041.
11. Ge X., Han Q.-L. Distributed formation control of networked multi-agent systems using a dynamic event-triggered communication mechanism // IEEE Transactions on Industrial Electronics. — 2017. — Т. 64, № 10. — С. 8118— 8127. — DOI: 10.1109/tie.2017.2701778.
12. Formation control and collision avoidance for multi-agent systems based on position estimation / Y. Xia [и др.] // ISA transactions. — 2016. — Т. 61. — С. 287—296. — DOI: 10.1016/j.isatra.2015.12.010.
13. Sakai D., Fukushima H, Matsuno F. Leader-Follower Navigation in Obstacle Environments While Preserving Connectivity Without Data Transmission // IEEE Transactions on Control Systems Technology. — 2017.
14. Oh K.-K., Park M.-C., Ahn H.-S. A survey of multi-agent formation control // Automatica. — 2015. — Т. 53. — С. 424—440. — DOI: 10.1016/j.automatica. 2014.10.022.
15. Wang X., Zeng Z, Cong Y. Multi-agent distributed coordination control: developments and directions via graph viewpoint // Neurocomputing. — 2016. — Т. 199. — С. 204—218. — DOI: 10.1016/j.neucom.2016.03.021.
16. Dong X., Hu G. Time-varying formation control for general linear multi-agent systems with switching directed topologies // Automatica. — 2016. — Т. 73. — С. 47—55. — DOI: 10.1016/j.automatica.2016.06.024.
17. Cornejo A., Nagpal R. Distributed range-based relative localization of robot swarms // Algorithmic Foundations of Robotics XI. — Springer, 2015. —
С. 91—107. — DOI: 10.1007/978-3-319-16595-0_6.
18. Formation tracking and transformation control of nonholonomic AUVs based on improved SOM method / L. Xin [и др.] // Control And Decision Conference (CCDC), 2017 29th Chinese. — IEEE. 2017. — С. 500—505. — DOI: 10.1109/ ccdc.2017.7978146.
19. A practical multirobot localization system / T. Krajnik [и др.] // Journal of Intelligent & Robotic Systems. — 2014. — Т. 76, № 3/4. — С. 539—562. — DOI: 10.1007/s10846-014-0041-x.
20. Uniform circle formation by asynchronous robots: A fully-distributed approach /
S. Jiang [и др.] // Computer Communication and Networks (ICCCN), 2017 26th International Conference on. — IEEE. 2017. — С. 1—9. — DOI: 10.1109/ icccn.2017.8038468.
21. Kim J. H., Kwon J.-W., Seo J. Mapping and path planning using communication graph of unlocalized and randomly deployed robotic swarm // Control, Automation and Systems (ICCAS), 2016 16th International Conference on. — IEEE. 2016. —
С. 865—868. — DOI: 10.1109/iccas.2016.7832414.
22. Hecker J. P., Moses M. E. Beyond pheromones: evolving error-tolerant, flexible, and scalable ant-inspired robot swarms // Swarm Intelligence. — 2015. — Т. 9,
№ 1. — С. 43—70. — DOI: 10.1007/s11721-015-0104-z.
23. Wang Z, Qin L, Yang W. A self-organising cooperative hunting by robotic swarm based on particle swarm optimisation localisation // International Journal of Bio-Inspired Computation. — 2015. — Т. 7, № 1. — С. 68—73. — DOI: 10.1504/ijbic.2015.068001.
24. Sa A. O. de, Nedjah N., Macedo Mourelle L. de. Distributed and resilient localization algorithm for Swarm Robotic Systems // Applied Soft Computing. — 2017. — Т. 57. — С. 738—750. — DOI: 10.1016/j.asoc.2016.07.049.
25. A decentralized localization scheme for swarm robotics based on coordinate geometry and distributed gradient descent / V.-L. Dang [и др.] // MATEC Web of Conferences. Т. 54. — EDP Sciences. 2016. — DOI: 10.1051/matecconf/ 20165402002.
26. A Low Cost Omnidirectional Relative Localization Sensor for Swarm Applications / A. Kohlbacher [и др.] // Wf-IoT 2018. — 2018.
27. COSФ: artificial pheromone system for robotic swarms research / F. Arvin [и др.] // Intelligent Robots and Systems (IROS), 2015 IEEE/RSJ International Conference on. — IEEE. 2015. — С. 407—412. — DOI: 10.1109/IR0S.2015. 7353405.
28. Pheeno, a versatile swarm robotic research and education platform / S. Wilson [и др.] // IEEE Robotics and Automation Letters. — 2016. — Т. 1, № 2. —
С. 884—891. — DOI: 10.1109/lra.2016.2524987.
29. Rubenstein M, Cornejo A., Nagpal R. Programmable self-assembly in a thousand- robot swarm // Science. — 2014. — Т. 345, № 6198. — С. 795—799. — DOI: 10.1126/science.1254295.
30. Beni G. From swarm intelligence to swarm robotics // International Workshop on Swarm Robotics. — Springer. 2004. — С. 1—9. — DOI: 10.1007/978-3- 540-30552-1_1.
31. Sahin E. Swarm robotics: From sources of inspiration to domains of application // International workshop on swarm robotics. — Springer. 2004. — С. 10—20. — DOI: 10.1007/978-3-540-30552-1_2.
32. A taxonomy for swarm robots / G. Dudek [и др.] // Intelligent Robots and Systems’ 93, IROS’93. Proceedings of the 1993 IEEE/RSJ International Conference on. Т. 1. - IEEE. 1993. — С. 441-447. - DOI: 10.1109/IR0S.1993.583135.
33. Sugihara K., Suzuki I. Distributed algorithms for formation of geometric patterns with many mobile robots // Journal of robotic systems. — 1996. — Т. 13, №
3. — С. 127—139. — DOI: 10.1002/(sici)1097-4563(199603)13:3<127:: aid-rob1>3.0.co;2-u.
34. Suzuki I., Yamashita M. Distributed anonymous mobile robots: Formation of geometric patterns // SIAM Journal on Computing. — 1999. — Т. 28, № 4. —
С. 1347—1363. — DOI: 10.1137/s009753979628292x.
35. Tan Y, Zheng Z.-y. Research advance in swarm robotics // Defence Technology. —
2013. — Т. 9, № 1. — С. 18—39. — DOI: 10.1016/j.dt.2013.03.001.
36. Navarro I., Matia F. An introduction to swarm robotics // ISRN Robotics. — 2012. — Т. 2013. — DOI: 10.5402/2013/608164.
37. Zakiev A., Tsoy T, Magid E. Swarm Robotics: Remarks on Terminology and Classification // International Conference on Interactive Collaborative Robotics. — Springer. 2018. — С. 291—300.
38. Amelin K., Tyushev K., Kaliteevskii V. Communication and maintaining of data integrity method for decentralized network of autonomous group of mobile robots // Control, Decision and Information Technologies (CoDIT), 2016 Internatior Conference on. — IEEE. 2016. — С. 372—377.
39. Control of a group of mobile robots based on formation abstraction and decentralized locational optimization / K. Yoshida [и др.] // IEEE Transactions on Robotics. —
2014. — Т. 30, № 3. — С. 550—565.
40. Fukushima H., Kon K., Matsuno F. Model predictive formation control using branch-and-bound compatible with collision avoidance problems // IEEE Transactio on Robotics. — 2013. — Т. 29, № 5. — С. 1308—1317.
41. Takeda T., Ito K., Matsuno F. Path generation algorithm for search and rescue robots based on insect behavior—Parameter optimization for a real robot // Safety, Security, and Rescue Robotics (SSRR), 2016 IEEE International Symposium on. — IEEE. 2016. — С. 270—271.
42. Designing pheromone communication in swarm robotics: Group foraging behavior mediated by chemical substance / R. Fujisawa [и др.] // Swarm Intelligence. — 2014. — Т. 8, № 3. — С. 227—246.
43. Sakai D., Fukushima H., Matsuno F. Flocking for Multirobots Without Distinguish^ Robots and Obstacles // IEEE Transactions on Control Systems Technology. — 2017. — Т. 25, № 3. — С. 1019—1027.
44. Massimino A. K., Sofge D. A. Motion Localization with Optic Flow for Autonomous Robot Teams and Swarms // Journal of Computer and Communications. — 2017. — Т. 6, № 01. — С. 265. — DOI: 10.4236/jcc.2018.61026.
45. Decentralized stochastic control of robotic swarm density: Theory, simulation, and experiment / H. Li [и др.] // Intelligent Robots and Systems (IROS). — 2017. — DOI: 10.1109/iros.2017.8206299.
46. Kuriya R., Tsujimura T., Izumi K. Augmented reality robot navigation using infrared marker // 2015 24th IEEE International Symposium on Robot and Human Interactive Communication (RO-MAN). — IEEE. 2015. — С. 450—455.
47. Dhiman V., Ryde J, Corso J. J. Mutual localization: Two camera relative 6-dof pose estimation from reciprocal fiducial observation // 2013 IEEE/RSJ International Conference on Intelligent Robots and Systems. — IEEE. 2013. —
С. 1347—1354.
48. Olson E. AprilTag: A robust and flexible visual fiducial system // 2011 IEEE International Conference on Robotics and Automation. — IEEE. 2011. — С. 3400— 3407.
49. Fiala M. Comparing ARTag and ARToolkit Plus fiducial marker systems // IEEE International Workshop on Haptic Audio Visual Environments and their Applications. — IEEE. 2005. — 6—pp.
50. Automatic generation and detection of highly reliable fiducial markers under occlusion / S. Garrido-Jurado [и др.] // Pattern Recognition. — 2014. — Т. 47, № 6. — С. 2280—2292.
51. Comparing fiducial marker systems in the presence of occlusion / A. Sagitov [и др.] // 2017 International Conference on Mechanical, System and Control Engineering (ICMSC). — IEEE. 2017. — С. 377—382.
52. ARTag, AprilTag and CALTag Fiducial Systems Comparison in a Presence of Partial Rotation: Manual and Automated Approaches / K. Shabalina [и др.] // International Conference on Informatics in Control, Automation and Robotics. — Springer. 2017. — С. 536—558.
53. Atcheson B., Heide F., Heidrich W. CALTag: High Precision Fiducial Markers for Camera Calibration. // VMV. Т. 10. — Citeseer. 2010. — С. 41—48.
54. Gageik N., Benz P., Montenegro S. Obstacle detection and collision avoidance for a UAV with complementary low-cost sensors // IEEE Access. — 2015. — Т. 3. — С. 599—609.
55. A Low-Cost Educational Platform for Swarm Robotics. / M. S. Couceiro [и др.] // International Journal of Robots, Education & Art. — 2012. — Т. 2, № 1.
56. Extensive ultrasonic local positioning system for navigating with mobile robots /
D. Ruiz [и др.] // Positioning Navigation and Communication (WPNC), 2013 10th Workshop on. — IEEE. 2013. — С. 1—6. — DOI: 10.1109/wpnc.2013. 6533279.
57. On the behaviour of low cost laser scanners in HW/SW particle filter SLAM applications / B. Sileshi [и др.] // Robotics and Autonomous Systems. — 2016. — Т. 80. — С. 11—23. — DOI: 10.1016/j.robot.2016.03.002.
58. A mapping mobile robot using RP Lidar scanner / M. A. Markom [и др.] //
2015 IEEE International Symposium on Robotics and Intelligent Sensors (IRIS). — IEEE. 2015. — С. 87—92.
59. Arvin FSamsudin K., Ramli A. R. A short-range infrared communication for swarm mobile robots // 2009 International Conference on Signal Processing Systems. — IEEE. 2009. — С. 454—458. — DOI: 10.1109/icsps.2009.88.
60. Miniature six-channel range and bearing system: algorithm, analysis and experiment validation / N. Farrow [и др.] // Robotics and Automation (ICRA), 2014 IEEE International Conference on. — IEEE. 2014. — С. 6180—6185. — DOI: 10.1109/icra.2014.6907770.
61. The pi swarm: A low-cost platform for swarm robotics research and education /
J. Hilder [и др.] // Conference Towards Autonomous Robotic Systems. — Springer. 2014. — С. 151—162. — DOI: 10.1007/978-3-319-10401-0_14.
62. A low-cost real-time tracking infrastructure for ground-based robot swarms /
A. G. Millard [и др.] // Swarm Intelligence: 9th International Conference, ANTS 2014, Brussels, Belgium, September 10-12, 2014. Proceedings. Т. 8667. — Springer. 2014. — С. 278.
63. Visual odometry and mapping for autonomous flight using an RGB-D camera /
A. S. Huang [и др.] // Robotics Research. — Springer, 2017. — С. 235—252. — DOI: 10.1007/978-3-319-29363-9_14.
64. 3-D mapping with an RGB-D camera / F. Endres [и др.] // IEEE Transactions on Robotics. — 2014. — Т. 30, № 1. — С. 177—187. — DOI: 10.1109/tro. 2013.2279412.
65. Bighand2. 2m benchmark: Hand pose dataset and state of the art analysis /
S. Yuan [и др.] // Computer Vision and Pattern Recognition (CVPR), 2017 IEEE Conference on. — IEEE. 2017. — С. 2605—2613. — DOI: 10.1109/cvpr. 2017.279.
66. Shah U., Khawad R., Krishna K. M. Deepfly: towards complete autonomous navigation of mavs with monocular camera // Proceedings of the Tenth Indian Conference on Computer Vision, Graphics and Image Processing. — ACM. 2016. — С. 59. — DOI: 10.1145/3009977.3010047.
67. Zakiev A. Validation examples. — 2019. — [Online; accessed 31-May-2019]. https://drive.google.com/drive/folders/1CxhSq2vZWIm71rBimZvN1YwZQIFZ r89?usp=sharing/.