M.Sc Thesis

M.Sc StudentMaor Raz
SubjectOptimal Self-Organization and Self-Assembly in Multi-Robot
DepartmentDepartment of Autonomous Systems and Robotics
Supervisor PROF. Pinchas Gurfil
Full Thesis textFull thesis text - English Version


In swarms of robots, two typical tasks should be achieved. One of them involves the assembly of a group of physically separated robots into a single unit. Once the robots are getting sufficiently close, collision avoidance strategies are mandatory.

This research addresses the problem of collision avoidance, by deriving an autonomous control law that enables the robots to avoid obstacles. In this development, a controller based on the artificial potential method was analytically derived, assuming that each obstacle remains static.

Moreover, an experimental validation of the controller was performed, in which the obstacles were allowed to slowly move, and still the controller enabled the robots to follow the desired target free of collisions.

The problem of assembly of a number of robots into a single unit was explored as well. The dynamics of the system under two different cyclic pursuit schemes was investigated, and conditions for stability and asymptotic convergence were derived. These algorithms were experimentally assessed showing good performances on real-time systems.

Every control law developed in this work required a full state feedback, consisting of position, velocity, heading angle and angular velocity of the robot. However, in the utilized experimental setup, the velocity is not a measurable state and all the measured signals are highly noisy. Therefore, estimation and filtering is mandatory, and to that end an Extended Kalman Filter (EKF) was developed. The EKF was assessed by Monte Carlo (MC) simulations, and then implemented in the experimental setup for both scenarios, collision avoidance and self-assembly.

The experimental setup consisted of an air-table and floating robots equipped with thrusters providing forces and torques. The sensors of the robots included accelerometers, gyros and magnetometers. There was also an overhead camera that provided measurements of position and heading. A ground unit was used for receiving sensor data, implementing the above algorithms, and sending control commands to the robots.