The RVO (Reciprocal Velocity Obstacles) approach is a widely used algorithm in the field of autonomous agent navigation and crowd simulation. It is designed to calculate collision-free and efficient paths for multiple agents moving in a shared environment. The RVO2 approach takes into account the velocities and preferred directions of the agents to compute safe and feasible trajectories, considering both avoidance of collisions and adherence to individual agents' goals.
RVO provides guarantees on the safety of the robots' navigation from one point to another in a physical space considering the physical complexity of the robot.
As for a visualization module, PyGame is a popular library for creating 2D games and visualizations in Python. Integrating PyGame with the RVO2 approach provided a powerful tool for visualizing the behavior and interactions of agents in a simulated environment. By leveraging PyGame's capabilities, we created a graphical representation of the agents, their trajectories, and the obstacles in the environment, allowing for a more intuitive understanding of the RVO2 algorithm in action.
The implementation for the same can be seen in this video.
The paper that we referred to for the literature survey can be found here.
Some Failure Cases: In some cases we can see the agent being stuck near the obstacle.
Solution: We tried changing the time step of the agent resulting in some successful maneuvers around the obstacles.