Constrained VPH+: a local path planning algorithm for a bio-inspired crawling robot with customized ultrasonic scanning sensor
© Rao et al 2016
Received: 28 November 2015
Accepted: 20 May 2016
Published: 19 July 2016
This paper aims to develop a local path planning algorithm for a bio-inspired, reconfigurable crawling robot. A detailed description of the robotic platform is first provided, and the suitability for deployment of each of the current state-of-the-art local path planners is analyzed after an extensive literature review. The Enhanced Vector Polar Histogram algorithm is described and reformulated to better fit the requirements of the platform. The algorithm is deployed on the robotic platform in crawling configuration and favorably compared with other state-of-the-art local path planning algorithms.
Robotic systems with the ability to reconfigure their morphologies in response to the application scenario display great potential with their versatility, fault tolerance, and efficiency for a variety of rugged missions in real world. A few works on reconfigurable robotics are [1–5].
Many reconfigurable robotic platforms are based on bio-inspired or biomimetic designs, which are based on naturally evolving mechanisms. A focus of reconfigurable robotic research has been the development of a bio-inspired platform which displays both rolling and crawling abilities, leading to the robotic platform known as BiLBIQ . However, these efforts had been focused completely on mechanism design with almost no effort associated with perception or autonomous functionality.
While remote-controlled robot mechanisms have sufficed for most applications encountered thus far, emerging applications in the fields of surveillance and security necessitate the development of robots possessing a measure of autonomy and intelligence, including basic functionality such as mapping and local path planning. Unfortunately, integrating complex reconfigurable design mechanisms with perception introduces multiple new research challenges.
Recently, a family of reconfigurable robotic platforms (i.e., Scorpio) capable of crawling and rolling locomotion has been developed. These robots mimic the morphology of a huntsman spider that can transform between crawling and rolling by reconfiguring their legs.
The Scorpio is in development for applications pertaining to surveillance and security; thus, the primary focus has been the reduction in size of the platform, as well as improvement of power efficiency of the overall system. Furthermore, the changing requirements of the platform have resulted in a rapid evolution of five stages of the robotic platform in 2 years. In order to adhere to both these conditions, the Arduino Mini Pro 328 has been chosen as the onboard processing unit allowing for rapid prototyping of applications.
A customized ultrasonic sensor is designed for the system due to the relative computational inexpensiveness in processing the data, as well as to reduce power consumption. The customized sensor allows greater control of the sensor to restrict environmental observations to data that is relevant to the successful completion of the mission.
Previous works based on the Scorpio focus on the development of an efficient rolling controller [7, 8] and the formulation and implementation of an intelligent vision-based terrain perception module . This paper attempts to add to the suite of autonomous functions for the Scorpio by developing an efficient obstacle avoidance algorithm in crawling mode.
One of the desired applications for the Scorpio platform has been the rapid traversal of unknown, unstructured terrain in a fixed period of time. A wall-following algorithm  was first implemented as a proof-of-concept obstacle avoidance algorithm, using the hardware described above. Despite its ability to traverse a room and find an exit, it was an inefficient algorithm, leading to oscillations in certain scenarios.
Conventional local path planning algorithms [11–22] assume the use of a robotic platform with Ackermann steering model, as well as highly accurate, rapidly scanning range sensors producing highly dense data. Since the Scorpio robot is unable to satisfy the assumptions for both the proprioceptive and the exteroceptive models, design of a local path planning algorithm that better fits the robot is necessitated.
In this paper, we present the design and development of a local path planning algorithm based on the Enhanced Vector Field Histogram (VPH+) and inspired by the inherent constraint due to the choice of sensor and platform. The remainder of the paper is organized as follows: The “Design of the robot” section describes the design specification of the robotic platform. Thereafter, in “Methods” section, we explain the design of the robot, sensor, and algorithm. The “Formulation” section derives the Constrained VPH+ algorithm from the VPH+ algorithm, while “Implementation” section provides a pseudocode for the algorithm, along with a discussion of some issues faced in implementing the algorithm on the Scorpio. The results are described in “Results” section. Finally, “Conclusions and future work” section concludes the paper and suggests avenues of future research.
While the spider normally crawls on eight legs similar to other species of spiders, when provoked or threatened by an external stimulus, it can escape by doubling its normal crawling speed using forward or backward flips with the use of its eight legs simultaneously, similar to acrobatic flic-flac movements used by gymnasts. Most notably, the spider turns somersaults to move independent of surrounding conditions. As a result, it does not need a slope to initiate the rolling process using the gravitational force. It also does not need to perform a run-up or a start-up gesture to trigger the rolling locomotion.
The main aim of the huntsman spider in deploying rolling mechanism as observed so far seems to maximize the displacement of the spider to escape from threatening circumstances, or when meeting a conspecific. So far, the spider has not been observed to perform any other functions in rolling mode, such as changing positions and hunting for prey.
Local path planning
Local path planning and obstacle avoidance have been the subject of a great quantum of research in the robotics research community [11–22]. Initial papers focussed on development of techniques for perception and mapping using noisy sonar sensors [11–13].
An environment representation technique was arrived at in  known as the occupancy grid map, which is still used as a map representation technique in state-of-the-art algorithms. Elfes  first formulated the use of occupancy grids for navigation and mobile robot perception.
Borenstein and Koren  developed a local path planning algorithm known as Virtual Force Field (VFF), using occupancy grids for obstacle representation and potential fields  for navigation. The VFF algorithm employed the use of repelling force fields around obstacles and an attracting force in the direction of the target. The simplicity of the formulation made it an attractive path planning algorithm in the robotics research community.
Mathematical and practical drawbacks of the VFF were discovered and analyzed in . While the occupancy grid method was a computationally inexpensive way to generate an approximate representation of the map, it was unable to compensate for the contradiction between the complexity and roughness of the grids, rendering it unsuitable for use with a low precision sensor like an ultrasonic range sensor. A tendency of the algorithm to get trapped in local minima was also discovered in scenarios where the goal was behind an obstacle.
In response to this problem, the Vector Field Histogram (VFH) was first introduced in  and further expanded and analyzed in [16, 17]. The VFH uses a two-dimensional Cartesian grid as a representative world model, while local environmental data are represented as a one-dimensional polar histogram around the robot. Each section of the polar histogram represents the obstacle density in that direction. The algorithm then chooses a direction which contains the best trade-off between the obstacle density and the goal direction. A subsequent step provided appropriate steering commands to generate motion in the desired direction.
Extensive testing and implementation of the VFH resulted in the discovery that the VFH algorithm does not take into account the vehicle kinematics, resulting in unrealistic and impractical inputs provided to the robot. In response, the Dynamic Window Planning approach was postulated in  which was specifically designed to account for the limited velocities and accelerations inherent in wheeled mobile robots.
The VFH was also improved, and its drawbacks addressed in the VFH+ algorithm . The VFH+ algorithm added two extra stages to the VFH algorithm. The VFH algorithm also displayed the tendency of creating oscillations in environments with multiple narrow openings due to the sharp thresholding near the entrances. The first additional stage in the VFH+ algorithm was used to provide a hysteresis function between two threshold values, to reduce the oscillations and produce a smoother trajectory.
The next stage added to the VFH algorithm in the VFH+ algorithm was to mask the histogram representing obstacle density to consider only directions feasible for the robot to travel in. The robot was assumed to be a wheeled robot with Ackermann steering mechanism, and hence, the robot trajectory was assumed to be based on series of circular arcs.
The VFH* algorithm developed in  used the A* search algorithm to add look-ahead capability to the VFH+ algorithm to reduce problems arising from purely local obstacle avoidance.
An and Wang  developed the Vector Polar Histogram (VPH) algorithm by combining the VFH+ algorithm and the Potential Field Method. The VPH algorithm relied on the newly available laser range scanners with comparably higher accuracy to accurately represent the local obstacle map.
Gong et al.  extended the VPH algorithm to the VPH+ algorithm by grouping individual obstacles to obstacle blocks and determining concave blocks ahead of time, in order to increase the efficiency of the robot in traversing the environment. The VPH+ algorithm also extended the VPH cost function to take the robot heading and speed into account.
Design of the robot
The section presents the mechanical design and system architecture of the Scorpio robot.
The design of the Scorpio is based on the huntsman spider introduced in the previous section, to enable it to perform crawling and rolling locomotions. While the huntsman spider has eight legs, the Scorpio robot is designed with four legs which are adequate to perform crawling and rolling locomotions.
Specifications of the Scorpio robot 
Arduino Mini Pro 328
JR ES 376
Pololu Micro Maestro 18 channel USB servo controller
LiPo 1200 mAh 7.4 v
XBee Pro S1, Digi International
Full body material
Polylactic acid (PLA)
Diameter (rolling) in mm
LXWXH (walking) in mm
230 mm × 230 mm × 215 mm
Weight (full weight) in g
Specifications of the custom ultrasonic sensor
Time period per data point
HS-35HD Ultra Nano Servo
Size in mm
18.6 × 7.6 × 15.5
Mode of locomotion
The rolling mode allows for greater speed of locomotion with reduced environmental perception.
The crawling mode conversely trades better environmental perception for reduced locomotion.
Kinematic constraints: Since the mode of locomotion in the Scorpio is crawling, standard wheeled robot kinematics are not valid. Consequently, all recent standard local path planning algorithms which assume Ackermann steering model cannot be used [14–22].
- 2.Sensor inaccuracy constraints: The customized ultrasonic sensor has a beam width of 15°, making it more inaccurate as the range increases. Thus, any obstacle in the sonar beam at the same range (as seen in Fig. 7) will produce the same reading. Hence, algorithms which rely on the accuracy of environmental information provided by the exteroceptive sensor [21, 22] will perform poorly on the Scorpio.
Sensor speed constraints: Slow scanning speed of the sensor implies performing scans over the full angular range frequently will negatively impact the efficiency of the algorithm. As a result, all recent local path planning algorithms which utilize the full sensor range [15–22] cannot be implemented.
Complex kinematic model: The Scorpio platform consists of twelve joint motors, resulting in a complex kinematic motion model. Computation of the entire kinematic model for locomotion on the Arduino processor used would greatly decrease speed and efficiency of the robot, rendering invalid all recent algorithms requiring computation of exact vehicle kinematics [18–22].
Processor constraints: The Arduino Mini Pro processor is single-threaded; thus, each separate action has to be performed serially. As a consequence, the platform is unable to scan the environment and move simultaneously resulting in the invalidation of all algorithms in which robot velocity is an important determinant of direction of motion [17–22].
The most recent state-of-the-art local path planning algorithms in the robotics research community are the Enhanced Vector Polar Histogram (VPH+) . The VPH+ algorithm enhances the VPH algorithm formulation with obstacle grouping and classification, along with inclusion of the robot velocity and heading into the cost function. Since the sensors used by the Scorpio are too inaccurate to group obstacles accurately, and the single-threaded onboard processor ensures the platform will not be in motion when the algorithm is being computed, the VPH+ algorithm will be modified with suitable constraints to better fit the Scorpio platform. Motion primitives will be used to approximate the Scorpio kinematic model, to ensure acceptable performance on the Arduino Mini Pro processor.
The VPH+ algorithm represents the local environment as a polar histogram. It generates a cost function for each sensor angle using inputs from both the range sensor and the robot kinematic model. It leverages on the accuracy and the range of the laser range sensor to determine the boundaries of obstacle blocks, as well as to classify the obstacle as concave or convex. Concave obstacles are avoided outright, with the histogram value at the corresponding angles being set to zero.
Effect of sensor inaccuracy
In the case of , the range sensor used was the LMS200, which has an angular beam width of 4.4 millirad  and a maximum range of 80 m. Thus, the diameter of the robot must be greater than 0.352 m, according to Eq. 10. The Pioneer P3AT robot used by them has a width of 0.381 m, which fulfills this criterion.
Cost function reformulation
Parameters used in experiment
The height of the ultrasonic sensor is around 17 cm from the ground; hence, it was attempted to ensure obstacles of a similar minimum height. The cluttered office environment is used to ensure effectiveness of the algorithm in realistic settings.
To ensure minimal errors due to pose inconsistency, the goal was set to be simply 1.20 m from the start point. The trials were conducted 6 times for each algorithm at each obstacle course.
The VPH+ algorithm took an average of 249.7254 s, while the CVPH+ algorithm clocked an average time of 224.3952 s.
The VPH+ algorithm took an average of 336.5960 s, while the CVPH+ algorithm took 329.4032 s.
Conclusions and future work
The CVPH+ algorithm is found to outperform the VPH+ algorithm in both empty and clutter-filled environments. The improvements in the algorithm were obtained from formalizing implicit assumptions made in the VPH+ algorithm regarding the sensor and the robot model, both of which were invalid for the Scorpio robot.
Further insight was obtained from examining the original VPH+ cost function further and reformulating it to improve the performance of the CVPH+ algorithm.
Pose inaccuracy due to the noisy gait primitive estimates, as well as the inherent inaccuracies due to the 3D printing process, has been seen to reduce the performance of both the VPH+ and the CVPH+ algorithms. A more comprehensive formulation taking into account pose and map estimates will result in better performance of the algorithms.
A further avenue of future research includes the use of the rolling configuration of the robot to improve its speed in traversing the environment. The challenges caused by the displacement of the ultrasonic sensors in the rolling mode of the robot will also be an interesting aspect to be explored.
AR formulated, analysed and implemented the VPH+ and CVPH+ algorithms described in the paper. Mohan RE provided guidance and valuable suggestions for the improvement of the paper. EK designed the platform and created the initial motion primitives for the robot gait. All authors read and approved the final manuscript.
The authors declare that they have no competing interests.
Open AccessThis article is distributed under the terms of the Creative Commons Attribution 4.0 International License (http://creativecommons.org/licenses/by/4.0/), which permits unrestricted use, distribution, and reproduction in any medium, provided you give appropriate credit to the original author(s) and the source, provide a link to the Creative Commons license, and indicate if changes were made.
- Nansai S, Rojas N, Elara MR, Sosa R. Exploration of adaptive gait patterns with a reconfigurable linkage mechanism. In: 2013 IEEE-RSJ international conference on intelligent robots and systems (IROS). IEEE, Japan. 2013; p. 4661–8.Google Scholar
- Yim M, Shen W-M, Salemi B, Rus D, Moll M, Lipson H, Klavins E, Chirikjian GS. Modular self-reconfigurable robot systems [grand challenges of robotics]. IEEE Robot Autom Mag. 2007;14(1):43–52.View ArticleGoogle Scholar
- Murata S, Kurokawa H. Self-reconfigurable robots. IEEE Robot Autom Mag. 2007;14(1):71–8.View ArticleGoogle Scholar
- Moubarak P, Ben-Tzvi P. Modular and reconfigurable mobile robotics. Robot Auton Syst. 2012;60(12):1648–63.View ArticleGoogle Scholar
- Gilpin K, Kotay K, Rus D. Miche: modular shape formation by self-disassembly. Int J Robot Res. 2008;27:345–72.View ArticleGoogle Scholar
- King RS. BiLBIQ: a biologically inspired robot with walking and rolling locomotion, biosystems and biorobotics, vol. 2. Springer. 2013. http://www.springer.com/engineering/robotics/book/978-3-642-34681-1.
- Nemoto T, Mohan RE, Iwase M. Realization of rolling locomotion by a wheel-spider-inspired hexapod robot. Robot Biomim. 2015;2(1):1–16. doi:10.1186/s40638-015-0026-7.View ArticleGoogle Scholar
- Nemoto T, Mohan RE, Iwase M. Energy-based control for a biologically inspired hexapod robot with rolling locomotion. Digit Commun Netw. 2015;1(2):125–33.View ArticleGoogle Scholar
- Sinha A, Tan N, Mohan RE. Terrain perception for a reconfigurable biomimetic robot using monocular vision. Robot Biomim. 2014;1(1):1–11.View ArticleGoogle Scholar
- Dwyer B. Wall following robot. Diss. Worcester Polytechnic Institute; 2013.Google Scholar
- Elfes A. A sonar-based mapping and navigation system. In: Proceedings 1986 IEEE international conference on robotics and automation, vol. 3. 1986; p. 1151. doi:10.1109/ROBOT.1986.1087534.
- Elfes A. Occupancy grids: a probabilistic framework for mobile robot perception and navigation. 1989.Google Scholar
- Elfes A. Using occupancy grids for mobile robot perception and navigation. Computer. 1989;22(6):46–57. doi:10.1109/2.30720.View ArticleGoogle Scholar
- Borenstein J, Koren Y. High-speed obstacle avoidance for mobile robots. In: Proceedings of the 1988 IEEE international symposium on intelligent control. 24–26 Aug 1988; p. 382, 384. doi:10.1109/ISIC.1988.65461.
- Koren Y, Borenstein J, Potential field methods and their inherent limitations for mobile robot navigation. In: Proceedings of the 1991 IEEE international conference on robotics and automation, vol. 2. 9–11 Apr 1991; p. 1398, 1404. doi:10.1109/ROBOT.1991.131810.
- Borenstein J, Koren Y. Real-time obstacle avoidance for fast mobile robots in cluttered environments. In: Proceedings of the 1990 IEEE international conference on robotics and automation, vol. 1. 13–18 May 1990; p. 572, 577. doi:10.1109/ROBOT.1990.126042.
- Borenstein J, Koren Y. The vector field histogram-fast obstacle avoidance for mobile robots. IEEE Trans Robot Autom. 1991;7(3):278–88. doi:10.1109/70.88137.View ArticleGoogle Scholar
- Fox D, Burgard W, Thrun S. The dynamic window approach to collision avoidance. IEEE Robot Autom Mag. 1997;4(1):23,33. doi:10.1109/100.580977.View ArticleGoogle Scholar
- Ulrich I, Borenstein J. VFH+: reliable obstacle avoidance for fast mobile robots. In: Proceedings of the 1998 IEEE international conference on robotics and automation, vol. 2. 16–20 May 1998; p. 1572, 1577. doi:10.1109/ROBOT.1998.677362.
- Ulrich I, Borenstein J. VFH*: local obstacle avoidance with look-ahead verification. In: 2000 Proceedings of the ICRA ’00 IEEE international conference on robotics and automation, vol. 3. 2000; p. 2505, 2511. doi:10.1109/ROBOT.2000.846405.
- An D, Wang H. VPH: a new laser radar based obstacle avoidance method for intelligent mobile robots. IEEE Int Conf Intell Control Autom. 2004;5:4681–5.Google Scholar
- Gong J, Duan Y, Man Y, Xiong G. VPH+: an enhanced vector polar histogram method for mobile robot obstacle avoidance. In: ICMA 2007. International conference on mechatronics and automation, 2007. 5–8 Aug 2007; p. 2784, 2788. doi:10.1109/ICMA.2007.4304000.
- Khatib O. Real-time obstacle avoidance for manipulators and mobile robots. In: Proceedings of the 1985 IEEE international conference on robotics and automation, vol. 2. Mar 1985; p. 500, 505.Google Scholar
- SICK AG. Telegrams for operating/configuring the LMS 2XX laser measurement systems. Firmware version V.2.10/X1.14. Sick AG: Waldkirch, Germany. 2003.Google Scholar
- Lanz-Cortiella R, Llorens-Calveras J, Rosell-Polo JR, Gregorio-Lopez E, Palacin-Roca J. Characterisation of the LMS200 laser beam under the influence of blockage surfaces. Influence on 3D scanning of tree orchards. Sensors. 2011;11(3):2751–72. doi:10.3390/s110302751.View ArticleGoogle Scholar