Description:
Vector Field Histogram (VFH) is a local obstacle avoidance algorithm for mobile robot operating in unknown or dynamic environment in real time. VFH utilizes two phases of processing: creating 2D cartesian histogram grid from ranged sensor reading (LiDAR/ultrasonic) and making 1D polar histogram which shows an object-density around the vehicle in a specific direction.
Steering commands are chosen by finding "valleys" (sectors of low obstacle density) in the polar histogram, considering the vehicle's current heading and desired direction. VFH+ is an enhanced version of the original VFH that includes trajectory look-ahead verification and cost function optimization to generate a more continuous motion.
Plan for Implementation:
- Sensor Simulation: Simulate LiDAR/range sensor data returning obstacle distances in polar coordinates
- Cartesian Histogram Grid: Build 2D occupancy grid with certainty values, updated continuously
- Polar Histogram Construction:
- Candidate Direction Selection:
-
Identify sectors with obstacle density below threshold (valleys)
-
Calculate cost function considering target direction, current heading, and previous direction
- Speed Control: Implement dynamic speed adjustment based on obstacle proximity
- Trajectory Verification: Look-ahead collision checking for selected direction
- Visualization: Display histogram grid, polar histogram, selected direction, and vehicle path
Expected Outcomes:
- Real-time obstacle avoidance simulation in dynamic environments
- Smooth navigation through dense obstacle courses at speeds 0.5-0.8 m/s
- GIF animation showing vehicle avoiding static and moving obstacles
- Comparative analysis with potential field methods (VFF)
- Performance metrics: average speed, collision avoidance success rate, path smoothness
- Demonstration of superior performance in U-shaped traps and narrow passages
- Unit tests for histogram construction, direction selection, and collision prediction
Execution structure and Pre-requisite
- Pre-requisite: NumPy, Matplotlib, SciPy
- File Structure:
- main algorithm
- occupancy grid management
- 1D histogram construction
- range sensor simulation
- Parameters: Grid resolution, histogram sector size, threshold values, safety margins
- Test Scenarios: Dense obstacle field, moving obstacles, narrow corridors, dead-end situations
- Advantages: Fast computation, real-time capable, handles sensor uncertainty well
- Limitations: Local planner only (no global optimality), may get stuck in local minima
- Integration: Can be combined with global planner (like Hybrid A*) for hierarchical planning
Description:
Vector Field Histogram (VFH) is a local obstacle avoidance algorithm for mobile robot operating in unknown or dynamic environment in real time. VFH utilizes two phases of processing: creating 2D cartesian histogram grid from ranged sensor reading (LiDAR/ultrasonic) and making 1D polar histogram which shows an object-density around the vehicle in a specific direction.
Steering commands are chosen by finding "valleys" (sectors of low obstacle density) in the polar histogram, considering the vehicle's current heading and desired direction. VFH+ is an enhanced version of the original VFH that includes trajectory look-ahead verification and cost function optimization to generate a more continuous motion.
Plan for Implementation:
Convert Cartesian grid to 1D polar histogram around robot position
Apply smoothing to reduce noise and sensor uncertainty
Identify sectors with obstacle density below threshold (valleys)
Calculate cost function considering target direction, current heading, and previous direction
Expected Outcomes:
Execution structure and Pre-requisite