Development of a General Search Based Path Follower in Real Time Environment

  • B. B. V. L. DeepakEmail author
  • G. Raviteja
  • Upasana Behera
  • Ravi Prakash
Conference paper
Part of the Lecture Notes in Electrical Engineering book series (LNEE, volume 395)


The path planning problem of an Unmanned Ground Vehicle in a predefined structured environment is dealt in this paper. Here the environment chosen as the roadmap of NIT Rourkela obtained from Google maps as reference. An Unmanned Ground Vehicle (UGV) is developed and programmed so as to move autonomously from an indicated source location to the defined destination in the given map following the most optimal path. An algorithm based on linear search is implemented to the autonomous robot to generate shortest paths in the environment. The developed algorithm is verified with the simulations as well as in experimental environments.


Unmanned ground vehicle NITR map Path planning MATLAB simulation 

1 Introduction

In automated environments, Unmanned Ground vehicles (UGV) or mobile robots are used for several applications like transportation of materials, tour for elderly or disabled etc. from one specified location to destination following the optimal path [1]. UGV navigation environment includes perception, localization and map building, cognition and path planning and motion control. Accurate path planning enables autonomous mobile robots to follow or track an optimal collision free path from start position to the goal position without colliding obstacles in its workspace [2, 3]. An ideal path planner must be able to handle uncertainties in the sensed world model, to minimize the impact of objects on the robot and to find the optimum path in minimum time especially if the path is to be followed regularly.

The objective of this paper is to provide an approach for designing a path planning methodology for UGV in a complex environment with multiple branching paths to be chosen from, in order to reach the destination.

2 Related Work

A fundamental approach for formulating and solving the path planning problem is the configuration space (c-space) approach [4]. The central idea of this approach is the representation of the robot as a single point. There are numerous types of algorithms to search and manipulate the data structure used to store maps space environment zone/work. Examples of these algorithms is a graph search algorithm consisting of best first search algorithm traversing a graph using a priority queue to find shortest collision free path shorter collisions [4]. There are several artificial intelligence based approaches such as artificial immune system [5], Particle swarm optimization [6, 7], Fuzzy logics [8] etc. to solve robot motion planning problem.

But the above mentioned techniques are not applicable line follower robots. In this study a new approach has been introduced to solve motion control of a path follower in known environments.

3 Algorithm

There are several algorithms have been developed in the past [9, 10]. The algorithm that is proposed in this paper is similar to the binary search algorithm used to find a number in data structures. This algorithm uses both global path planner as known environment is used and the coordinate values are available, and local path planner since the path follows only the black coloured road provided.

Initially the environment in which the path has to be planned is verified and studied thoroughly with the source and goal positions in the environment. Different branches and paths at every connecting node are to be identified. The path starts and continues in the direction of goal until it reaches a node and a decision has to be made. When there are multiple branching paths to be chosen at a particular node then the destination point coordinates are checked and the corresponding path which leads to destination is chosen.

At this point choosing the branching path at a node uses the technique similar to that of the potential field approach. The path that leads to the goal position has attractive effect and among such paths the shortest one is chosen. For example consider the environment shown in Fig. 1. With the source located at node A and goal is located at node E.
Fig. 1

General environment with multiple possible paths

Now the choice has to be made at B whether to go towards F or C. Considering the branch from C to E there is a curve and has more length, so it will be better to choose the path along the F branch. After reaching F it will choose the branch towards E the goal position but does not continue towards G. When the environment is being analyzed the curve lengths are identified and hence helps in choosing the path in case of multiple choices as explained earlier.

4 Experimental Analysis

To validate the efficiency of the proposed algorithm, a known environment is considered as shown in Fig. 2. This environment is obtained from google maps, which represents the roadmap of National Institute of Technology, Rourkela. This roadmap contains the locations of various departments and other important places in the campus. The problem statement of the current research work is to decide the direction of the path by choosing the optimal of the available paths between the given departmental locations.
Fig. 2

NIT Rourkela road map

The roadmap is saved as an image file and then imported in MATLAB 2012b. For the various departments, corresponding coordinates are specified. First the map is studied and the location of the different departments are noted and verified. The path planning is done according to the process described in the flow chart as depicted in Fig. 3.
Fig. 3

Flow chart of the proposed algorithm

For simulation purpose the Unmanned Ground Vehicle (UGV) or the differential mobile robot considered here is represented as (robot x, robot y). Similarly all the departments and other prominent locations on the map are represented by the x and y coordinates.

The source and goal positions can be defined by
  1. Case 1:

    entering the locations with the keyboard during program execution.

  2. Case 2:

    choosing the desired positions on the roadmap by using mouse.


Once the source and the goal positions are attained, their respective position with one another are checked and the direction of the motion is determined. Here the whole map is checked and verified globally. If the source coordinate value is less than the goal position coordinate values, then the UGV moves in the forward direction towards left to right. Otherwise the UGV moves from right to left. Once the source and destination positions are given on the map, the UGV will move towards its goal position. If there are branching paths along the way, then the robot decides its direction motion according to the shortest path traversal criteria. The most important factor to be considered here is that always the shortest path is chosen for deciding the direction of motion of the robot towards the goal.

When the vehicle is moving in the given path it will travel only along the road dedicated for its travel. It means that, the UGV always follows the black line indication on the road.

5 Results and Discussions

As described in the previous section, case 1 the source and goal position are entered with the mouse as shown in Fig. 4 and the simulation result containing the path for the corresponding positions is shown in Fig. 5. In this case it can be seen that goal coordinate value is higher than source position and hence the robot moves forward from left to right.
Fig. 4

Source and goal positions

Fig. 5

Path for the positions indicated in case 1

Here the source is at mechanical (ME) department with coordinates x = 805 and y = 303. And the destination is ceramic (CER) department with coordinates x = 1074 and y = 127. Time taken for the simulation to take place is 4.95 s. Similarly as described in case 2 the source and goal positions can be entered manually using keyboard during execution as shown in Fig. 6. The path obtained for the specified locations in Fig. 6. is shown in Fig. 7
Fig. 6

Command window showing source and goal positions

Fig. 7

Path obtained

For checking the output in case 2 the source position is at ID department with coordinates x = 1264 and y = 292 and the goal position is at BBA with coordinates x = 459 and y = 171. To check the validity of the proposed algorithm in the real time environment, a differential drive robot has been considered as shown in Fig. 8. The motion analysis has been performed as per the equations obtained from past research work [11, 12, 13]. The motion equation of the developed robot is represented in Eq. (1).
Fig. 8

Robot follows path in real-time environment

$$ \dot{\xi }_{I} = \left\{ {\begin{array}{*{20}c} {\dot{x}} \\ {\dot{y}} \\ {\dot{\psi }} \\ \end{array} } \right\} = \frac{1}{2s}\left[ {\begin{array}{*{20}c} {\begin{array}{*{20}c} {s*cos\psi } \\ {s*sin\psi } \\ { - 1} \\ \end{array} } & {\begin{array}{*{20}c} {s*cos\psi } \\ {s*sin\psi } \\ 1 \\ \end{array} } \\ \end{array} } \right]*\left\{ {\begin{array}{*{20}c} {v_{Rt} } \\ {v_{Lt} } \\ \end{array} } \right\} $$

6 Conclusion

The simulation results for various choices of source and goal gives satisfactory results following the optimal path in each and every case. In the simulation process a time delay of 0.03 s is used to travel from one point to the adjacent point. Accordingly the vehicle is assumed to move at a speed of 33.33 units/second. We have the time taken for the robot to reach the destination in different scenarios. This can be related to estimate the time taken for UGV to reach the destination.


  1. 1.
    Fan, K. C., & Lui, P. C. (1994). Solving find path problem in mapped environments using modified A* algorithm. Systems, Man and Cybernetics, IEEE Transactions on, 24(9), 1390–1396.Google Scholar
  2. 2.
    Deepak, B. B. & Parhi, D. (2013). Intelligent adaptive immune-based motion planner of a mobile robot in cluttered environment. Intelligent Service Robotics, 6(3), 155–162.Google Scholar
  3. 3.
    Deepak, B. B. V. L., Parhi, D. R., & Raju, B. M. V. A. (2014). Advance particle swarm optimization-based navigational controller for mobile robot. Arabian Journal for Science and Engineering, 39(8), 6477–6487.Google Scholar
  4. 4.
    Brooks, R. A. (1982). Solving the find-path problem by representing i’ree space as generalized cones, Artificial Intelligence Laboratory, Massachusetts Institute of I Technology. Al Memo 674, May.Google Scholar
  5. 5.
    Deepak, B. B. V. L., Parhi, D. R., & Kundu, S. (2012). Innate immune based path planner of an autonomous mobile robot. Procedia Engineering, 38, 2663–2671.Google Scholar
  6. 6.
    Deepak, B. B. V. L., & Parhi, D. R. (2013, December). Target seeking behaviour of an intelligent mobile robot using advanced particle swarm optimization. In Control, Automation, Robotics and Embedded Systems, International Conference on (pp. 1–6).Google Scholar
  7. 7.
    B. B. V. L., & Parhi, D. (2012). PSO based path planner of an autonomous mobile robot. Open Computer Science, 2(2), 152–168.Google Scholar
  8. 8.
    Kundu, S., Parhi, R., & Deepak, B. B. (2012). Fuzzy-neuro based navigational strategy for mobile robot. International Journal of Scientific & Engineering Research, 3(6).Google Scholar
  9. 9.
    Pakdaman, M., & Sanaatiyan, M. M. (2009, December). Design and implementation of line follower robot. In Computer and Electrical Engineering, 2009. ICCEE’09. Second International Conference on (Vol. 2, pp. 585–590). IEEE.Google Scholar
  10. 10.
    Bajestani, S. E. M., & Vosoughinia, A. (2010, August). Technical report of building a line follower robot. In Electronics and Information Engineering (ICEIE), 2010 International Conference On (Vol. 1, pp. V1–1). IEEE.Google Scholar
  11. 11.
    Deepak, B. B. V. L., Parhi, D. R., & Jha, A. K. (2011). Kinematic Model of Wheeled Mobile Robots. Int. J. on Recent Trends in Engineering & Technology, 5(04).Google Scholar
  12. 12.
    Parhi, D. R., & Deepak, B. B. V. L. (2011). Kinematic model of three wheeled mobile robot. Journal of Mechanical Engineering Research, 3(9), 307–318.Google Scholar
  13. 13.
    Deepak, B. B. V. L., Parhi, D. R., & Amrit, A. (2012). Inverse Kinematic Models for Mobile Manipulators. Caspian Journal of Applied Sciences Research, 1(13).Google Scholar

Copyright information

© Springer India 2017

Authors and Affiliations

  • B. B. V. L. Deepak
    • 1
    Email author
  • G. Raviteja
    • 1
  • Upasana Behera
    • 1
  • Ravi Prakash
    • 1
  1. 1.Department of Industrial DesignNIT RourkelaRourkelaIndia

Personalised recommendations