Inferensys

Glossary

Velocity Obstacles (VO)

Velocity Obstacles (VO) is a geometric collision avoidance framework that defines the set of robot velocities that would cause a collision with another moving object within a specified time horizon.
Governance lead reviewing model governance framework on laptop, policy documents visible, executive office setup.
REAL-TIME REPLANNING ENGINES

What is Velocity Obstacles (VO)?

Velocity Obstacles (VO) is a geometric framework for reactive collision avoidance in multi-agent robotics, defining the set of velocities that would cause a robot to collide with another moving object within a specified time horizon.

A Velocity Obstacle is a cone-shaped region in a robot's velocity space, constructed from the relative position and velocity of a dynamic obstacle. Any velocity vector selected from within this VO region would result in a collision before a predefined time horizon τ. The core algorithm evaluates all admissible velocities—those respecting the robot's dynamic constraints—and selects the one that maximizes a goal-directed objective while lying outside all computed VOs, ensuring collision-free navigation.

The framework is inherently reciprocal, meaning it assumes other agents perform similar reasoning, leading to cooperative maneuvers. Extensions like the Hybrid Reciprocal Velocity Obstacle (HRVO) improve behavior in dense crowds. VO is a cornerstone of local collision avoidance, operating within a broader hierarchical planning architecture where a global planner provides a coarse path and VO handles immediate, reactive deviations. Its geometric nature makes it computationally efficient for real-time applications in heterogeneous fleets.

COLLISION AVOIDANCE FRAMEWORK

Key Features of Velocity Obstacles

Velocity Obstacles (VO) is a geometric framework for real-time, reciprocal collision avoidance between moving agents. It defines the set of relative velocities that would cause a collision within a specified time horizon, enabling agents to select safe, collision-free velocities.

01

Geometric Velocity Space

The core of VO is the transformation of physical obstacles into constraints in the velocity space of the robot. For each obstacle, the algorithm constructs a Collision Cone (CC)—the set of relative velocities that would cause an intersection between the robot and the obstacle within a time window τ. The Velocity Obstacle (VO) is then this cone translated by the obstacle's current velocity. Any velocity selected from outside the union of all VOs is guaranteed to be collision-free for at least time τ.

02

Reciprocal Velocity Obstacles (RVO)

A critical advancement that enables smooth, oscillation-free navigation in multi-agent settings. In the basic VO formulation, each agent assumes others will not change their velocity, which can lead to indecisive 'dancing' behavior. Reciprocal Velocity Obstacles (RVO) assumes all agents share the responsibility for collision avoidance. Each agent selects a velocity outside the VO that is the average of its preferred velocity and the velocity that would avoid the collision if the other agent acted similarly. This leads to more natural and predictable trajectories.

  • Key Benefit: Eliminates oscillatory behavior in dense traffic.
  • Assumption: Requires other agents to run a compatible algorithm.
03

Optimal Reciprocal Collision Avoidance (ORCA)

ORCA is the de facto standard implementation of the RVO concept, providing formal guarantees. For each pair of agents, ORCA defines a half-plane of permissible velocities in velocity space. The optimal collision-avoiding velocity is found by solving a low-dimensional linear program that selects the velocity closest to the agent's preferred velocity while lying within the intersection of all permissible half-planes.

  • Guarantee: Provides provably collision-free navigation for holonomic agents.
  • Efficiency: The linear program can be solved in real-time for dozens of agents.
  • Limitation: Primarily designed for agents with holonomic (omnidirectional) dynamics.
04

Time Horizon (τ)

The time horizon τ is a fundamental parameter that defines the predictive scope of the VO. It represents the future time window over which collisions are predicted and avoided. A larger τ makes the agent more conservative, avoiding potential collisions further in the future but potentially leading to unnecessary detours. A smaller τ makes the agent more aggressive, reacting only to imminent threats, which can be risky in high-speed scenarios.

  • Trade-off: Balances safety against efficiency and responsiveness.
  • Dynamic Adjustment: Advanced implementations may vary τ based on agent density or speed.
05

Integration with Global Planners

VO is inherently a local, reactive method. To be effective in complex environments, it must be integrated with a global path planner (e.g., A*, RRT*). The global planner provides a long-term goal and a coarse path, while the VO layer acts as a local collision avoidance module. The agent's 'preferred velocity' is typically set towards the next sub-goal on the global path. This hybrid architecture combines optimal long-range planning with safe, real-time reaction to dynamic obstacles.

06

Non-Holonomic Extensions

The classic VO/ORCA formulation assumes agents are holonomic (can move in any direction instantaneously). For real robots with non-holonomic constraints (e.g., differential-drive or Ackermann-steering vehicles), extensions are required. Common approaches include:

  • Kinodynamic VO: Sampling feasible motions that respect acceleration and turning limits.
  • Unicycle VO: Defining constraints directly in the space of linear and angular velocities.
  • Hybrid Planning: Using VO to select a safe guiding direction, then employing a low-level controller (e.g., Model Predictive Control) to track it with dynamic feasibility.

These extensions bridge the gap between geometric collision avoidance and physical robot dynamics.

METHODOLOGY COMPARISON

Velocity Obstacles vs. Other Collision Avoidance Methods

A technical comparison of geometric, reactive, and planning-based collision avoidance frameworks used in real-time replanning for heterogeneous fleets.

Core Feature / MetricVelocity Obstacles (VO)Dynamic Window Approach (DWA)Optimal Reciprocal Collision Avoidance (ORCA)Model Predictive Control (MPC)

Primary Mechanism

Geometric velocity space projection

Local search over admissible velocities

Reciprocal velocity selection via linear programming

Finite-horizon trajectory optimization

Planning Horizon

Fixed time horizon (τ)

Short, dynamic window (< 1 sec)

Implicit infinite horizon (velocity selection)

Configurable finite horizon (N steps)

Computational Complexity

O(n) for n obstacles

O(k) for k sampled velocities

O(n) for n agents

O(N³) for horizon N (typical)

Optimality Guarantee

None (feasibility only)

Local optimum within window

Optimal for reciprocal assumption

Local optimum for convex formulation

Multi-Agent Coordination

Reactive, non-cooperative

Reactive, non-cooperative

Decentralized, reciprocal cooperation

Centralized or decentralized optimization

Handles Kinodynamic Constraints

Requires Obstacle Trajectories

Typical Update Frequency

10-100 Hz

10-50 Hz

10-100 Hz

5-30 Hz

Primary Use Case

Predictive avoidance of moving obstacles

Reactive navigation in cluttered spaces

Dense, cooperative multi-agent navigation

Optimal, constraint-satisfying control

ROBOTICS & AUTONOMOUS SYSTEMS

Practical Applications and Use Cases

The Velocity Obstacles framework is a cornerstone for reactive, safe navigation in dynamic, multi-agent environments. Its geometric approach provides formal safety guarantees, making it essential for systems where agents must move concurrently without centralized coordination.

VELOCITY OBSTACLES (VO)

Frequently Asked Questions

Velocity Obstacles (VO) is a fundamental geometric framework for real-time, reactive collision avoidance in multi-agent robotics and autonomous systems. These questions address its core principles, implementation, and role within modern fleet orchestration.

A Velocity Obstacle (VO) is a geometric region in a robot's velocity space that represents the set of all velocities which, if selected, would result in a collision with another moving object within a specified time horizon (τ).

Formally, for a robot A and an obstacle B, the VO is constructed by taking the Minkowski sum of B's shape with A's shape, then translating this combined shape by B's current velocity. Any velocity for A that lies inside this translated region is considered a collision velocity. The core principle is to enable a robot to select a new velocity from the set of admissible velocities (those respecting the robot's dynamics) that lies outside all VOs, thereby guaranteeing collision-free navigation for the next τ seconds.

Prasad Kumkar

About the author

Prasad Kumkar

CEO & MD, Inference Systems

Prasad Kumkar is the CEO & MD of Inference Systems and writes about AI systems architecture, LLM infrastructure, model serving, evaluation, and production deployment. Over 5+ years, he has worked across computer vision models, L5 autonomous vehicle systems, and LLM research, with a focus on taking complex AI ideas into real-world engineering systems.

His work and writing cover AI systems, large language models, AI agents, multimodal systems, autonomous systems, inference optimization, RAG, evaluation, and production AI engineering.