0% found this document useful (0 votes)
16 views7 pages

66 - 79 - New Real Time (M) Bug Algorithm For Path Bplanning V

The document presents a new algorithm called M-Bug for path planning and obstacle avoidance in unknown 2D environments for non-holonomic robots. This algorithm utilizes on-board sensors, particularly LIDAR, to dynamically map the surroundings and select the shortest path while avoiding collisions. The M-Bug algorithm is designed to improve performance compared to traditional methods by adapting the path based on real-time data from the environment.

Uploaded by

Usman Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
16 views7 pages

66 - 79 - New Real Time (M) Bug Algorithm For Path Bplanning V

The document presents a new algorithm called M-Bug for path planning and obstacle avoidance in unknown 2D environments for non-holonomic robots. This algorithm utilizes on-board sensors, particularly LIDAR, to dynamically map the surroundings and select the shortest path while avoiding collisions. The M-Bug algorithm is designed to improve performance compared to traditional methods by adapting the path based on real-time data from the environment.

Uploaded by

Usman Khan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

ICCTA 2019, 29-31 October, Alexandria, Egypt

New Real Time (M-Bug) Algorithm for Path


Planning and Obstacle Avoidance In 2D
Unknown Environment
Ahmed Mohamed Mohsen Maha Ahmed Sharkas
Electronics & Communications Engineering Electronics & Communications Engineering
Arab Academy for Science, Technology & Maritime Transport Arab Academy for Science, Technology & Maritime Transport
Abukir, Alexandria, Egypt Abukir, Alexandria, Egypt
[email protected] [email protected]

Mohamed Saad Zaghlol


Electronics & Communications Engineering
Arab Academy for Science, Technology & Maritime Transport
Abukir, Alexandria, Egypt
[email protected]

Abstract- This paper proposes a new sensor-based rescue missions fields, surveillance and exploration
path planning and collision avoidance algorithm for non- tasks such as forest fire monitoring, ... etc.
holonomic robot travelling in unknown 2D environment Autonomous mobile robots can be simply defined as
named as (M-Bug) algorithm in order to reduce the intelligent machines that are capable of performing
overall of traveled path. It uses the difference between
slope lines to find and choose the smallest angle located
certain tasks in their environment without explicit
between slope of straight line from mobile robot to goal human interaction, decrease the operating costs and
point and slope from mobile robot and two endpoints of complexity[1]. For the purpose of this research, only
edges for obstacle, by choosing the smallest one which the algorithms that allow for conditions of navigation
refers to nearest leave point to reach goal point and in an unknown environment using range on-board
repeat this action with other obstacles until mobile robot sensors and are suitable for real-time, embedded
reach to goal point. this algorithm based on using on- applications with an acceptable performance are
board sensors to generate information about the considered.
environment and obstacle located in front of mobile One of the fundamental fields of research, is path
robot. This algorithm creates better performance when
compared to the other traditional algorithms. It provides
planning [2], Path planning in robotics is defined as
real time obstacle avoidance, compatible with LIDAR navigation that will be collision free and most optimum
sensor and fast enough to be implemented on embedded for the autonomous vehicle to maneuver from a start
microcontrollers. The used algorithm is based on a point to goal point. The purpose of a path-planning
modification for existing path planning and obstacle method for a mobile robot is to find a continuous
voidance algorithms (Bug1, Bug2, Tangent-Bug, K-Bug, collision-free path from start point to goal point. The
Dist-Bug …...etc.), and The Vector Field Histogram path planning problem is divided into two main
(VFH) Algorithm in unknown environment. The main categories: known-environment and unknown-
advantage of this algorithm is that it is not limited to the environment. In the known-environment, the
origin-destiny line and changes the main line every leave
point. MATLAB 2018a is used in simulation to validate
information about the location and size of obstacles is
the effectiveness of the proposed algorithm, and it is sufficiently provided and the opposite for the
implemented on multiple scenarios to show the ability of unknown-environment [3].
the mobile robot to follow a path, detect obstacles, and There were many algorithms which are used in the
navigate around them to avoid collision. unknown environment. one of the most simple and
effective algorithms is Bug family algorithms which it
Keywords- Path planning, Collision avoidance, Bug will be discussed. Bug algorithms, a kind of
algorithm, Autonomous mobile robots, LIDAR, non- autonomous navigation algorithm for unknown
holonomic. environment and is proposed by Lumelsky and
I. INTRODUCTION Stepanov[4]. The method tries to find and specify a
Over the recent decades, the field of robotics and route with the least path points. the advantages of this
especially mobile robotics has great progress in principle are simple and easy to realize. The
technological advancement and degree of autonomy. assumption considered that on-board sensors can get
Aautonomous mobile robots are used in a wide range complete obstacle information. the robot is a particle
of fields; from factories production lines, Research and with perfect self-positioning capability, and according

978-1-7281-5276-9/19/$31.00 ©2019 IEEE 25


ICCTA 2019, 29-31 October, Alexandria, Egypt

to this concept, the robot moves directly to the goal B. Bug2


point firstly, and updates data form on-board sensors The Bug2 algorithm shown in Fig.2 is one of the
online for current path to avoid the obstacles, until the improved Bug algorithms. Using this algorithm, the
goal point is reached. robot would move along the initial path towards a goal
The aim of this paper is proposing a new algorithm until an obstacle is encountered. Once an obstacle is
for autonomous navigation for mobile robot from the encountered, the robot would keep a fixed distance and
start point to the goal point. This paper is organized as start following the borders of the obstacle, calculating
follows. Section II reviews for related work. Section III the slope of the straight line joining its current position
discusses a proposed algorithm for path planning and to the final goal. When the slope becomes equal to the
collision avoidance. Section IV provides the simulation slope of the initial path, the robot leaves the border and
results for the proposed algorithm and finally the paper continues towards the goal[4].
is concluded in section V. Even though this algorithm improves the efficiency
of Bug1 by not repeating the path around the obstacle,
II. RELATED WORK it is still limited to the origin-destiny line and does not
Path planning and Collision avoidance in an address the problem of generating the shortest path.
unknown environment has been a subject of interest for
decades and several algorithms have been proposed to
tackle such problem[5]. This section surveysthe most
commonly used collision avoidance algorithms.
- Bug Algorithms
The Bug algorithms family is one of the simplest
obstacle avoidance algorithms ever described.
Moreover, they are fundamental and complete
algorithms with provable guarantees Like all other
obstacle avoidance algorithms [5]. The goal of the Bug
algorithm is to generate a collision free path from a start
Fig.2.Bug2 algorithm[4]
point to goal point. The Bug algorithms do not assume
knowledge of the global environment or shapes or sizes
C. Dist-Bug
of obstacles but depend on local knowledge perceived
The Dist-Bug shown in Fig.3 is another
from sensors.
improvement to the Bug algorithm family. It was
A. Bug1 invented by Kamon and Rivlin[6], and originates from
The Bug1 algorithm is one of the earliest obstacle Sankaranarayanan’s algorithms Alg1 and Alg2 [7].
avoidance algorithms [4]. In this algorithm, the robot Dist-Bug allows the robot to reach the destination in a
circles the obstacle one complete time, calculating the comparatively shorter time. The algorithm considers
distance from the goal at each position to find the the maximum detection range of the robot to be R.
shortest distance. Once a complete rotation along the Similar to the other Bug algorithms, first the mobile
borders of the obstacle is achieved, the robot would robot starts by moving towards the goal point G until it
move to that point and leave towards the goal in a faces an obstacle. Once an obstacle is encountered, the
straight-line manner. This is calculated based upon the mobile robot starts to follow the borders of the obstacle
leaving point and goal point using the slope ‘m’ and y- in a predefined direction (default) either counter
intercept ‘c’ as follows. clockwise or clockwise. when the mobile robot follows
the borders of the obstacle at the preset distance, it
(1) calculates its distance from the goal ( ) in a
Bug1 algorithm shown in Fig.1 suffers some continuous way and keeps record of the minimum
drawbacks, when the robot is following the edge of one distance since last hit point. Furthermore, the mobile
obstacle it may collide with a neighboring one if both robot also uses the on-board sensors to detect the free
obstacles are very close or the gap between them is less space F, which is a distance between obstacle and the
than the width of the robot and it takes more time to mobile robot current location X in the direction of the
reach the goal point. predefined goal point. For the case when no obstacle is
detected, F is set to R and the robot leaves the border
of the obstacle once the following condition is satisfied.

( , ) ( ) (2)

Where d(X, G) is the distance between current


location and goal, and where step is a predefined
constant which is one of the algorithm’s limitations and
Fig.1.Bug1 algorithm[4] drawbacks.

26
ICCTA 2019, 29-31 October, Alexandria, Egypt

VFH algorithm offers better efficiency by using a


threshold point to overcome the sensor noise, and takes
into consideration the kinematics of the mobile robot.
III. THE PROPOSED ALGORITHM
This section proposes a novel modified real time
path planning and obstacle avoidance algorithm named
as (M-Bug) algorithm. This method based in using on-
board sensors to generate information about the
environment for performing fast and a dynamic smooth
path planning for non-holonomic mobile robot using
on-board LIDAR sensor to map the surrounding
Fig.3. Path generated by Dist-Bug [8]
environment to detect the obstacles to avoid collision
[12], and also choosing the shortest path to reach the
D. The Vector Field Histogram (VFH) Algorithm goal point. This algorithm creates better paths when
The Vector Field Histogram (VFH) Algorithm is a compared to the other traditional algorithms.
sensor based algorithm in an unknown environment For practical autonomous mobile robot, path
described for the first time by J. Borenstein and Y. planning and obstacle avoidance in real time is
Koren [9], and was later improved by I. Ulrich and J. important issue. Therefore, many algorithms have been
Borenstein [10] under name VFH+ then improved to proposed to achieve balance between low cost and
VFH* by I. Ulrich and J. Borenstein [11]. The VFH effectiveness[13].
method is manly based on the two principles. The first This study presents a new algorithm for path
one is a two-dimensional Cartesian histogram grid planning and obstacle avoidance depend on low cost
which is continuously updated in real-time with range LIDAR sensor, and involving a reasonable level of
data sampled by the on-board range sensors. In the calculations, so that it can be easily used in real time
second one, the histogram grid is reduced to a one- control applications with microcontrollers [14]. This
dimensional polar histogram shown in Fig.4, that is algorithm is simulated in MATLAB2018a and the
constructed around the momentary location of the performance is introduced in the coming sections.
robot. The polar histogram is the most significant in The suggested algorithm is based on the fact that
Fig.4, Angles reding by on-board sensor(k)and the shortest path between two points is a straight line
probability of finding obstacle (H(k)) in that direction between them. Therefore, the efforts to find the path for
presented by x-axis and y-axis Sequentially. a mobile robot by dividing overall path to small straight
By creating a local occupancy grid map of the line paths with beginning point in mobile robot and end
environment around the mobile robot all probabilities with leave point which will be a new start point for next
for existence obstacles computed. Only paths which is step, and repeat this step until reach to goal point.
greater than the width of mobile robot is allowed by
using the polar histogram. The main concept of this algorithm is
The mobile robot selects a certain path based on 1) straight line is the shortest path between two
cost function which defined for each path. The mobile points.
robot takes the path with the minimum cost. This action 2) hit point and leave point in this work is
depends on the alignment of the mobile robot’s path determined by LIDAR, before the robot hit the obstacle
with the goal point, and on the difference between new with acceptable distance (can be adjustable depending
path direction and the orientation for current wheel. on mobile robot size and the environment scale.

Algorithm Description
To implement this algorithm, first the 2-D
Cartesian co-ordinate of goal point and start point
putted in algorithm (or from GPS). There are three
main steps for the algorithm in order to implement the
autonomous navigation from the start point to the goal
point as shown in the flow chart in Fig.5. The three
points are summarized as follows
1) motion towards target.
2) scan obstacle surface or boundary
follower until find leaving point depending on
the relation between the main slope and the
Fig.4. The polar histogram used in VFH algorithm[9] edge slope.

27
ICCTA 2019, 29-31 October, Alexandria, Egypt

3) make a new start point and go …. Is angle of slope line between center of
forward to goal point. mobile robot (LIDAR sensor) and upper edge of
obstacle.
Then calculated two angles and shown in
Fig.7. located between mobile robot and two
boundaries with respect to origin-destiny line (dashed
line) from equations 6 and 7.

Fig.7. Angles θ1and θ2 located between mobile robot and two


boundaries with respect to origin-destiny line (dashed line)

1 | 1 | (6)
Fig.5. Flow chart for proposed (M-Bug) algorithm 2 | 2 | (7)
where
The mobile robot starts to moving from start point …. Is the angle between upper edge and density
to goal point in straight line until the LIDAR sensor line.
rays hit the first obstacle in this path. the algorithm …. Is the angle between lower edge and density
scans the first obstacle defining the two-boundary line.
points Fig.6, and calculated the slope angles , After the small angle chosen by the algorithm, the
and from equations 3, 4 and 5. mobile robot moves to the direction for corresponding
boundary edge which will be leave point.
Under condition of non-holonomic mobile robot
which have front width of (L). adding to the offset
distance (L/2) to avoid hit obstacle and for smooth
rotation and will be the start point for the next step
Fig.8.

Fig.6. slope angles θ, θobs1 and θobs2


(3)
1 1 (4)
2 2 (5)
where
…. is angle of slope line between center of mobile Fig.8.Move to new start point with offset L/2
robot (LIDAR sensor) and goal point.
…. Is angle of slope line between center of The new point will be considered as new start
mobile robot (LIDAR sensor) and lower edge of point1 (xn,Yn) and repeats above steps until reach to
obstacle. goal point Fig.9.

28
ICCTA 2019, 29-31 October, Alexandria, Egypt

Fig.9.Repeting algorithm steps to reach to goal point Fig.12.Obstacle with U shape (local minima effect)

The main advantage of this algorithm is that it is not 3)The worst case if the LIDAR sensor with 360
limited to the origin-destiny line and changes the main degree of scan and there is no visible path with width>
line every hit point until reach to the goal point throw W. The vehicle will enter in sleep mood until the
trajectory created by algorithm Fig.10. conditions changed.
IV. SIMULATION AND RESULTS ANALYSIS
In this work, two differential wheel non-holonomic
mobile robot model was used [15] as shown in Fig.13
with specifications, Look ahead Distance for LIDAR =
0.5m, Linear Velocity = 0.75 m/s, angular Velocity =
1.5 rad/s, Wheel radius R = 0.1 m, Wheelbase L = 0.5m
with controller created in MATLAB2018a for this
experiment as shown in the block diagram in Fig.14,
and the environment grade is (10X10)m .

Fig.10. trajectory created by algorithm


Special cases
1) In the case of a gap between two obstacles ≤ the
width of mobile robot front with (L) Fig.11, the
algorithm will neglect two mid points and consider the
two obstacle as one obstacle with two boundaries and
the decision depends on the measured θ1and θ2 which Fig.13. geometry of used two differential wheel non-
refers to a new line path slope (m). holonomic robot.

Fig.14. controller block diagram.

Fig.11.Gap between two obstacles ≤ the width of mobile robot some simulations were shown to illustrate the proposed
front with (L) algorithm. All simulations were programmed using
2)in case of obstacle with U shape, local minima MATLAB2018a shown in Fig15, 16, 17, 18 and 19.
effect the LIDER will detect two boundary edges, First, the robot starts sensing the environment with
mobile robot will not enter inside to reduce time, lidar sensor and follows the steps of the algorithm to
distance and energy cost Fig.12. reach the goal point, to avoid collision based on the

29
ICCTA 2019, 29-31 October, Alexandria, Egypt

proposed algorithm stated above. When the robot In order to verify the algorithm, Fig.20 represent
detects an object with lidar sensor, it navigates around the distance taken by mobile robot to reach the goal
based on the smallest angle between the slope of the point in M-Bug, Bug2 and VFH algorithms and Fig.21
major line and the slopes of boundary lines which represent the time taken by mobile robot to reach the
correspond to short distance and therefore short time. goal point in M-Bug, Bug2 and VFH algorithms .
The robot will follow the same steps each time it
detects an obstacle and cerates its path again. Table.1 show the Rate of distance and time
decrease between M-Bug and two aerial algorithm
1)Environment #1 Bug2 and vector field histogram (VFH).
The start and goal points are represented by (1,1)
and (9,9), the robot can move from start point to goal
point independently, safely and without collision, and
the robot can cross the long and narrow channels,
complex environment and avoid local minima.

Fig.15. Simulation for environment #1


Total length of path(m.)
2) Environment #2 M-Bug Bug2 VFH
20

15

10

0
Fig.16. Simulation for environment #2 #1 #2 #3 #4 #5
M-Bug 11.775 12.225 11.925 12.15 11.475
3) Environment #3 Bug2 13.12 13.425 12.375 12.375 11.7
VFH 14.85 18.3 13.8 13.425 15.4

Fig.20. Distance taken by mobile robot to reach the goal point


in M-Bug, Bug2 and VFH algorithms

Fig.17. Simulation for environment #3


Average Time(sec.)
4) Environment #4(local minima) M-Bug Bug2 VFH
30
25
20
15
10
Fig.18. Simulation for environment #4
5
5) Environment #5(local minima and obstacles)
0
#1 #2 #3 #4 #5
M-Bug 15.9 16.568 16.1302 16.4298 15.5514
Bug2 17.75 18.24 16.7934 16.7488 18.875
VFH 20.043 24.63 18.6575 18.1814 20.2382

Fig.21. Time taken by mobile robot to reach the goal point in


Fig.19. Simulation for environment #5 M-Bug, Bug2 and VFH algorithms

30
ICCTA 2019, 29-31 October, Alexandria, Egypt

1063, 1986.
Table .1. Rate of distance and time decrease
Rate of distance Rate of time
[5] J. Ng and T. Bräunl, “Performance
decrease decrease comparison of Bug navigation algorithms,” J.
Enviro- Operations M-Bug M-Bug M-Bug M-Bug Intell. Robot. Syst. Theory Appl., vol. 50, no.
nment with with with with 1, pp. 73–84, 2007.
Number
Number Bug2 VFH Bug2 VFH [6] I. Kamon and E. Rivlin, “Sensory-based
#1 10 10.3% 20.7% 10.4% 20.7%
motion planning with global proofs,” IEEE
#2 10 8.9% 33.2% 9.2% 32.7% Trans. Robot. Autom., vol. 13, no. 6, pp. 814–
822, 1997.
#3 10 3.6% 13.6% 3.9% 13.5%
[7] N. Buniyamin, W. A. J. Wan Ngah, and Z.
#4 10 1.8% 9.5% 1.9% 9.6% Mohamad, “PointsBug versus TangentBug
algorithm, a performance comparison in
#5 10 1.9% 25.5% 17.6% 23.2% unknown static environment,” 2014 IEEE
Sensors Appl. Symp. SAS 2014 - Proc., pp.
278–282, 2014.
V. CONCLUSION.
[8] Yufka, Alpaslan & Parlaktuna, Osman.
In this paper a new algorithm is introduced based
on sensor-based algorithms in 2D unknown (2009). Performance Comparison of BUG
environment to resolve the autonomous navigation in Algorithms for Mobile Robots.
the unknown 2D static environment considering the 10.13140/RG.2.1.2043.7920.
kinematical characteristics of the mobile robot. It [9] J. Borenstein, Y. Koren, S. Member, A. Arbor,
depends on the use of LIDAR sensor for generating A. T. Laboratories, and A. Arbor, “THE
information about the environment and obstacle. VECTOR FIELD HISTOGRAM -,” vol. 7,
The proposed algorism was compared with Bug2 no. 3, pp. 278–288, 1991.
and VFH algorithms. The simulation results proved [10] I. Ulrich and J. Borenstein, “Reliable Obstacle
that the proposed (M-Bug) algorithm decrease distance Avoidance for Fast Mobile Robots,” no. May,
and time taken by mobile robot and the algorithm pp. 1572–1577, 1998.
outperforms other methods in the length and time. [11] I. Ulrich and J. Borenstein, “VFH *: Local
This research could be further developed in 3D Obstacle Avoidance with Look-Ahead
unknown environment with static obstacle and /or Verification,” no. April, pp. 2505–2511, 2000.
dynamic environment. [12] A. Pfrunder, P. V. K. Borges, A. R. Romero,
G. Catt, and A. Elfes, “Real-time autonomous
REFERENCES ground vehicle navigation in heterogeneous
[1] B. Paden, M. Cap, S. Z. Yong, D. Yershov, environments using a 3D LiDAR,” IEEE Int.
and E. Frazzoli, “A Survey of Motion Conf. Intell. Robot. Syst., vol. 2017-Septe, pp.
Planning and Control Techniques for Self- 2601–2608, 2017.
driving Urban Vehicles,” pp. 1–27, 2016. [13] S. Ricardo, D. Bein, and A. Panagadan, “Low-
[2] Q. M. Nguyen, L. N. M. Tran, and T. C. cost, real-time obstacle avoidance for mobile
Phung, “A Study on Building Optimal Path robots,” 2017 IEEE 7th Annu. Comput.
Planning Algorithms for Mobile Robot,” Commun. Work. Conf. CCWC 2017, 2017.
Proc. 2018 4th Int. Conf. Green Technol. [14] M. M. Almasri, A. M. Alajlan, and K. M.
Sustain. Dev. GTSD 2018, pp. 341–346, 2018. Elleithy, “Trajectory Planning and Collision
[3] J. Giesbrecht, B. Touchton, T. Galluzzo, D. Avoidance Algorithm for Mobile Robotics
Kent, C. D. Crane, and J. Giesbrecht, “Global System,” IEEE Sens. J., vol. 16, no. 12, pp.
Path Planning for Unmanned Ground 5021–5028, 2016.
Vehicles,” From OAIster, Provid. by OCLC [15] M. A. A. Hemmat, Z. Liu, and Y. Zhang,
Coop., no. December, pp. 1–41, 2004. “Real-Time path planning and following for
[4] V. L. and A. Stepanov, “Dynamic path nonholonomic unmanned ground vehicles,”
planning for a mobile automation with limited Int. Conf. Adv. Mechatron. Syst. ICAMechS,
information on the environment,” IEEE Trans. vol. 2017-Decem, pp. 202–207, 2018.
Automat. Contr., vol. 31, no. 11, pp. 1058–

31

You might also like