- Vector Field Histogram
In
robotics , Vector Field Histogram (VFH) is a real timemotion planning algorithm proposed byJohann Borenstein andYoram Koren in 1991.cite journal
author = Borenstein, J.
coauthors = Koren, Y.
year = 1991
title = The vector field histogram-fast obstacle avoidance for mobilerobots
journal = Robotics and Automation, IEEE Transactions on
volume = 7
issue = 3
pages = 278-288
url = http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=88137
accessdate = 2008-06-30] The VFH utilizes a statistical representation of the robot's environment through the so called histogram grid, and therefore place great emphasis on dealing with uncertainty from sensor and modeling errors. Unlike other obstacle avoidance algorithms, VFH takes into account thedynamics and shape of the robot, and returns steering commands specific to the platform. While considered a local path planner, i.e., not designed for global path optimality, the VFH has been shown to produce near optimal paths.The original VFH algorithm was based on previous work on
Virtual Force Field , a local path planning algorithm. After its creation in 1991, VFH was updated in 1998 byIwan Ulrich andJohann Borenstein , and renamed VFH+ (unofficially "Enhanced VFH").cite conference
author = Ulrich, I.
coauthors = Borenstein, J.
year = 1998
title = VFH+: reliable obstacle avoidance for fast mobile robots
conference =
booktitle = Robotics and Automation, 1998. Proceedings. 1998 IEEE International Conference on
volume = 2
publisher =
url = http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=677362
conferenceurl = ] The approach was updated again in 2000 by Ulrich and Borenstein, and was renamed VFH*.cite conference
author = Ulrich, I.
coauthors = Borenstein, J.
year = 2000
title = VFH: local obstacle avoidance with look-aheadverification
conference =
booktitle = Robotics and Automation, 2000. Proceedings. ICRA'00. IEEE International Conference on
volume = 3
publisher =
url = http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=846405
conferenceurl = ] VFH is currently one of the most popular local planners used in mobile robotics, competing with the later developeddynamic window approach . Many robotic development tools and simulation environments contain built-in support for the VFH, such as in thePlayer Project . [ [http://playerstage.sourceforge.net/doc/Player-2.0.0/player/group__driver__vfh.html VFH+ in Player/Stage/Gazebo] ]VFH
The Vector Field Histogram was developed with the aim to be computationally efficient, robust, and insensitive to misreadings. In practice, the VFH algorithm has proven to be fast and reliable, especially when traversing densely populated obstacle courses.
At the center of the VFH algorithm is the use of statistical representation of obstacles, through histogram grids (see also
occupancy grid ). Such representation is well suited for inaccurate sensor data, and gives the potential for the fusion of multiple sensor readings.The VFH algorithm contains three major components:
# Cartesian histogram grid: a two-dimensional Cartesian histogram grid is constructed with the robot's range sensors, such as a
sonar or alaser rangefinder . The grid is continuously updated in real time.
# Polar histogram: a one-dimensional polar histogram is constructed by reducing the Cartesian histogram around the momentary location of the robot.
# Candidate valley: consecutive sectors with a polar obstacle density below threshold, known as candidate valleys, is selected based on the proximity to the target direction.Once the direction of the center of the selected candidate direction is determined, orientation of the robot is steered to match. The speed of the robot is reduced when approaching the obstacles head-on.
VFH+
The VFH algorithm was improved in 1998 and renamed the VFH+. Improvements include:
# Threshold hysteresis: a
hysteresis increases the smoothness of the planned trajectory.
# Robot body size: robots of different sizes are taken into account, eliminating the the need to manually adjust parameters vialow-pass filter s.
# Obstacle look-ahead: sectors that are blocked by obstacles are masked in VFH+, so that the steer angle is not directed into an obstacle.
# Cost function: a cost function was added to better characterize the performance of the algorithm, and also gives the possibility of switching between behaviors by changing the cost function or its parameters.VFH*
The VFH* improves upon the original VFH algorithms by explicitly dealing with the shortcomings of a local planning algorithm, in that global optimality is not ensured. In VFH*, the algorithm verifies the steering command produced by using the
A* search algorithm to minimize the cost andheuristic functions. While simple in practice, it has been shown in experimental results that this look-ahead verification can successfully deal with problematic situations that the original VFH and VFH+ cannot handle (the resulting trajectory is fast and smooth, with no significant slow down in presence of obstacles).ee also
*
Motion planning
*Dynamic window approach References
Wikimedia Foundation. 2010.