RVO / ORCA 局部避障(笔记)
Sources:
- Jur van den Berg, Ming Lin, Dinesh Manocha. Reciprocal Velocity Obstacles for Real-Time Multi-Agent Navigation. ICRA 2008. http://gamma-web.iacs.umd.edu/RVO/icra2008.pdf
- RVO2 Library docs(ORCA): https://gamma.cs.unc.edu/RVO2/documentation/2.0/whatsnew.html
- GitHub: https://github.com/snape/RVO2
Velocity Obstacle (VO)
- 给定对方匀速假设,己方速度若落入 VO 锥,未来会撞。
Reciprocal Velocity Obstacle (RVO)
- 多智能体都在主动避障时,纯 VO 易振荡。
- RVO:双方各承担约一半避让;隐含「对方也会类似推理」。
- 保证(在论文条件下)安全且无振荡。
ORCA(RVO2)
- Optimal Reciprocal Collision Avoidance:相对速度约束化为半平面,用低维线性规划求最优速度。
- 比早期 RVO 采样更快、更平滑,碰撞保证更强。
- 用法:全局寻路给出 preferred velocity;ORCA/RVO 只做局部修正。
与游戏引擎
- UE Detour Crowd / RVO、Godot NavigationAgent 避障,同属「全局路径 + 局部避障」分层思想。