Modified bug-1 algorithm based strategy for obstacle avoidance in multi robot system

One of the primary ability of an intelligent mobile robot system is obstacle avoidance. BUG algorithms are classic examples of the algorithms used for achieving obstacle avoidance. Unlike many other planning algorithms based on global knowledge, BUG algorithms assume only local knowledge of the environment and a global goal. Among the variations of the BUG algorithms that prevail, BUG-0, BUG-1 and BUG-2 are the more prominent versions. The exhaustive search algorithm present in BUG-1 makes it more reliable and safer for practical applications. Overall, this provides a more predictable and dependable performance. Hence, the essential focus in this paper is on implementing the BUG-1 algorithm across a group of robots to move them from a start location to a target location. The results are compared with the results from BUG-1 algorithm implemented on a single robot. The strategy developed in this work reduces the time involved in moving the robots from starting location to the target location. Further, the paper shows that the total distance covered by each robot in a multi robot-system is always lesser than or equal to that travelled by a single robot executing the same problem.


Introduction
In recent years, mobile robots have become a more fundamental part of the industry.In general, obstacle avoidance has turned out to be pre-requisite to mobile robots and this has resulted in the introduction of a large variety of algorithms to support obstacle avoidance.Obstacle avoidance in unknown terrain is one of the key challenges in this regard.BUG algorithms are class of algorithms that deals with obstacle avoidance in unknown terrains.BUG algorithms were introduced as a methodology for non-heuristic motion planning in an uncertain environment where information about the environment is not fully pre-known [1].The sensors attached to the robot are used to attain dynamic information about obstacles and the BUG algorithm uses this dynamic information for navigating the robot avoiding obstacles.Among the various preliminary BUG algorithms, BUG-1 is more reliable and safer for practical applications due to the exhaustive search algorithm present in it.Figure 1 show the trajectory of the robot when BUG-1 was used for obstacle avoidance.The robot initially moves towards target in a straight line.Upon detection of obstacle, the robots start circumnavigating the obstacle in either clockwise or anticlockwise direction.The point of shortest distance to the target is measured and stored during this circumnavigation.Once the robot completes the circumnavigation it will move towards the point of shortest distance through the shortest path.When it reaches the point of shortest distance, it will continue to move towards target in straight line.
There are many existing strategies, such as IBA [2] and K-Bug [3] that aims at improving the travel time of the BUG algorithm.More effective varieties of these strategies have been introduced to higher order problems such as military surveillance and video game designs.The working of various strategies that form the class of BUG algorithms and a comparison of their performances were provided by James et.al [4].The potential for this branch of robotics is vast and hence this paper tries to address several issues of the basic variations of BUG algorithm with a new strategy using multiple robots in leader-follower formation.The concept of using a multi robot system to navigate around obstacles [5] is the basis of this new strategy.
Multi robot system in leader follower formation is a highly effective system in swarm robotics.The leadership exchange is the backbone of the leader-follower system [6], [7].This was utilized in the present work to design an efficient multi robot obstacle avoidance strategy.This new strategy assumes that the robots in the system possess only basic sensing and movement capabilities thus allowing other robots to take over and complete the task in case of breakdown of the leader robot.The energy levels of individual robots were monitored in real time and the lower energy robots were made to conserve their energy by reassigning the task to other higher energy robots.These two features of the algorithm improve the success probability of the provided task.The concept of information exchange across multiple robots [8], [9] was also implemented to achieve better path navigation.Thus, this new strategy is a modified BUG-1 strategy which is implemented across multiple robots for improving travel time and energy expenditure of robots and providing a better success probability of task at hand.

Lowest distance point
The better travel time and energy efficiency of the proposed algorithm is described by comparing the algorithm with conventional algorithms.In principle, it has been shown that the strategy has better travel time than conventional BUG algorithms and provides more efficient and flexible energy distribution.Reminder of the paper is organized as follows.Section II explores the obstacle avoidance strategy in detail.Section III presents a comparison of this new strategy and BUG-1 algorithm with respect to travel time and energy efficiency.Preliminary experimental results are presented in section IV.

Multi robot obstacle avoidance
The multi robot bug algorithm, similar to conventional bug algorithm, navigates multiple robots across a planar surface with unknown obstacles of arbitrary shape provided the start and goal location are known.A conventional BUG-1 algorithm (hence will be referred to as BUG-1 algorithm) has memory element which enables it to store information about the coordinates tracked by the robot and hence can opt for the shortest path.The algorithm introduced in this paper is based on the exchange of this stored information across multiple robots.Since the robots can access information about the coordinates travelled by other robots, it enables them to make an optimal decision at a faster rate.The algorithm has three major parts: first two are concerning the motion of the robots while the third is regarding the formation.A pictorial representation of this strategy is shown in Fig. 1.
Initially, two robots are assigned, a leader robot (at S1) and a follower robot (at S2).They move together towards the common goal (G).When these robots encounter an obstacle (O), they circumnavigate the obstacle in opposite direction and continue to move till they meet each other at a point (M).As the robots move around the obstacles, both the robots check the distance from its current position (P) to goal G and the point of minimum distance (D) is stored in the memory.From M, the robots take the shortest route to D and await the arrival of rest of the robots to D. At M, a new leader and a follower are assigned based on energy consideration.The direction of circumnavigation is chosen by taking the midpoint (C) of the line connecting start points of the leader and follower.An imaginary line is drawn from C to G as shown in Fig 2 and the robot that is on the left side of this line will be a right sensing robot (moves around the obstacle in the clockwise direction, sensing the obstacles on the right).The robot on the right side acts as follower robot and goes around in the other direction to that of the leader robot.This ensures that there is no collision between the robots before the completion of circumnavigation, which otherwise leads to overlapping and reduces efficiency of the system.There are many advantages for this approach in comparison to conventional algorithms especially when it comes to systems involving more than one robot.One of the most basic merits of the system is that it improves performance with increasing number of robots.Further, due to increased number of robots involved, the probability of success is also

Travel time
Without loss of generality, this paper considers an obstacle shape as shown in Fig. 4. Tangents are drawn from S in Fig. 4 (i) and S1, S2 in Fig. 4 (ii) to the obstacle.These tangents provide the possible locations of goal since the obstacle does not obstruct a goal if these tangents do not enclose the goal.The worst case scenario is goal is along the tangent, or more generally, as the goal comes closer to the point of initial contact of robot and obstacle.The performance of the algorithm decrease in this scenario since the meeting point of the two robots will be away from the point of minimum distance.
Consider the arrangement as shown in Fig. 4 (i) and (ii), S, S1 and S2 are the starting positions of robots while A, A1 and A2 are the initial points of contact of robots with obstacle and t is the time taken by the robots to reach A (or A1 and A2) from their respective starting positions (to avoid the effect of starting position on this time we have assumed a common time t for all cases).Let the time taken by a single robot to go around the obstacle and return to A be T1 and the time taken for the leader and follower to reach M, the meeting point be T2.If D is the point of minimum distance to goal, then time taken by the single robot to reach D from A will be T3 and time taken by the leader-follower robots to reach D from M be T4.Finally, let the time taken for the robots to move from M to goal be T5.
The total time taken by a single robot to reach goal, TtotalI is given by Eq.1 and time Ttotal-M taken by a multi robot system to accomplish the same is given by Eq.2.Equation 1and Eq. 2 are compared in the following section to prove that TtotalI ≥ Ttotal-M.For this comparison it is assumed that all the robots move with the same velocity.Further, to include the worst possible scenario, T3 is taken as zero.
From above mathematical analysis, Eq.(3) states that the travel time associated with the multi robot system is always lesser than that of a single robot executing Bug-1 algorithm.

Energy distribution
Efficient distribution of energy in robots ensures task completion.The energy efficiency of the robots is analyzed using the concept of average energy of the robots and by calculating energy of individual robot.In the first section average energy of the robots involved in the multi robot system is analyzed.In the second section it is shown that after executing the
The energy expenditure of a robot depends on several aspects such as motor, sensor elements, Transmission and reception of data and processing.Here it shall be assumed that all forms of energy expenditure are in direct relation to distance covered.This is a good enough approximation since we assume the robots to be idle when not in motion and almost all forms of energy expenditure mentioned above happen simultaneously when robot is in motion

Average energy
Total energy spend by a single robot, Etotal-I is compared with Etotal-M by using the same assumptions used to calculate travel time.To calculate the average energy from distance travelled, a constant k is used as the conversion factor as given in Eq.4 and Eq.5.
From the analysis made in previous section, average distance covered by the leaderfollower system is always lesser than the distance covered by a single robot.This implies that the average energy spent by a leader-follower system is lesser than that of a single robot executing the same task.i.e Etotal-I >Etotal-M.It also shows that the average energy expenditure shall always be lower in a multi-robot system irrespective of the number of robots involved.

Energy of an individual robot of multi-robot system
Consider one of the robots in the multi-robot system; if there is more than one obstacle and there are more than two robots, the initial leader-follower set of robots turn idle and another set of robots of higher energy levels take up the roles of leader and follower.Thus, assuming similar starting positions, the energy levels of individual robots of a system with more than two robots shall always remain higher compared with a two robot system.This inference arises from the fact that there is no other robot to take up the role of leader robot.So the worst case scenario in a multi robot system arises with only two robots in the multirobot system.As in the case of average energy, distance covered multiplied by a conversion

Fig. 2 .C
Fig. 2. Choice of direction of circumnavigation in multi robot system